[INFO] cloning repository https://github.com/puddingcodes777/rust-libp2p
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/puddingcodes777/rust-libp2p" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpuddingcodes777%2Frust-libp2p", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpuddingcodes777%2Frust-libp2p'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 225444472c0da10737719016b3db68ef5bc06e9e
[INFO] fixing puddingcodes777/rust-libp2p against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpuddingcodes777%2Frust-libp2p" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/puddingcodes777/rust-libp2p
[INFO] finished tweaking git repo https://github.com/puddingcodes777/rust-libp2p
[INFO] tweaked toml for git repo https://github.com/puddingcodes777/rust-libp2p written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/puddingcodes777/rust-libp2p on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/puddingcodes777/rust-libp2p already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d4e590ceecd6025dd3298cd0c6b24ce727fe2cb5d5926891ab1e1bb31d98fb53
[INFO] running `Command { std: "docker" "start" "d4e590ceecd6025dd3298cd0c6b24ce727fe2cb5d5926891ab1e1bb31d98fb53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d4e590ceecd6025dd3298cd0c6b24ce727fe2cb5d5926891ab1e1bb31d98fb53" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d4e590ceecd6025dd3298cd0c6b24ce727fe2cb5d5926891ab1e1bb31d98fb53", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d4e590ceecd6025dd3298cd0c6b24ce727fe2cb5d5926891ab1e1bb31d98fb53" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating core/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/multistream-select/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/quickcheck-ext/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/rw-stream-sink/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating muxers/mplex/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating muxers/test-harness/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/plaintext/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/quick-protobuf-codec/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/tcp/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/noise/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/autonat/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating libp2p/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/allow-block-list/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating swarm/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating swarm-derive/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/identify/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating swarm-test/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating muxers/yamux/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/kad/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/ping/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/autonat/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/request-response/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/connection-limits/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/dcutr/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/relay/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/floodsub/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/gossipsub/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/metrics/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/pnet/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/websocket/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/dns/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/rendezvous/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/mdns/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/memory-connection-limits/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/quic/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/tls/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/uds/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/upnp/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/webrtc-websys/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/webrtc-utils/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/websocket-websys/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/webtransport-websys/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/autonatv2/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/browser-webrtc/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/webrtc/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/chat/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/dcutr/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/distributed-key-value-store/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/file-sharing/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/identify/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/ipfs-kad/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/ipfs-private/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/metrics/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/ping/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/relay-server/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/rendezvous/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/stream/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/stream/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating examples/upnp/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating hole-punching-tests/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating identity/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating interop-tests/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/keygen/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/peer-store/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/server/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/perf/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating wasm-tests/webtransport-tests/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]    Compiling portable-atomic v1.11.0
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking smallvec v1.15.0
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking futures-io v0.3.31
[INFO] [stderr]     Checking critical-section v1.2.0
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]     Checking futures-task v0.3.31
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling cc v1.2.19
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling icu_locid_transform_data v1.5.1
[INFO] [stderr]     Checking base64ct v1.7.3
[INFO] [stderr]     Checking litemap v0.7.5
[INFO] [stderr]    Compiling icu_properties_data v1.5.1
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]    Compiling icu_normalizer_data v1.5.1
[INFO] [stderr]     Checking pem-rfc7468 v0.7.0
[INFO] [stderr]     Checking quick-protobuf v0.8.1
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking data-encoding v2.8.0
[INFO] [stderr]     Checking core2 v0.4.0
[INFO] [stderr]     Checking arbitrary v1.4.1
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking asn1_der v0.7.6
[INFO] [stderr]     Checking bs58 v0.5.1
[INFO] [stderr]     Checking base-x v0.2.11
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking futures-timer v3.0.3
[INFO] [stderr]     Checking hashbrown v0.15.2
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling anyhow v1.0.97
[INFO] [stderr]     Checking nu-ansi-term v0.50.1
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking rustls-pki-types v1.11.0
[INFO] [stderr]    Compiling snow v0.9.6
[INFO] [stderr]    Compiling rustls v0.23.26
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]     Checking deranged v0.4.0
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]     Checking rusticata-macros v4.1.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking http v1.3.1
[INFO] [stderr]    Compiling oid-registry v0.7.1
[INFO] [stderr]     Checking hashlink v0.10.0
[INFO] [stderr]     Checking indexmap v2.9.0
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking tinyvec v1.9.0
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking pem v3.0.5
[INFO] [stderr]    Compiling crunchy v0.2.3
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]    Compiling oid-registry v0.8.1
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling quinn-udp v0.5.11
[INFO] [stderr]     Checking webpki-roots v0.26.8
[INFO] [stderr]     Checking event-listener v5.4.0
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking parking_lot_core v0.9.10
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking socket2 v0.5.9
[INFO] [stderr]     Checking mio v1.0.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.2
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking socket2 v0.6.0
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking uint v0.10.0
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]    Compiling prometheus-client v0.24.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking uuid v1.16.0
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling quinn v0.11.7
[INFO] [stderr]    Compiling moka v0.12.10
[INFO] [stderr]     Checking dtoa v1.0.10
[INFO] [stderr]     Checking async-channel v2.3.1
[INFO] [stderr]     Checking hostname v0.4.1
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking hex_fmt v0.3.0
[INFO] [stderr]     Checking tagptr v0.2.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking resolv-conf v0.7.1
[INFO] [stderr]     Checking xml-rs v0.8.26
[INFO] [stderr]     Checking bimap v0.6.3
[INFO] [stderr]     Checking rand v0.9.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]     Checking clap_builder v4.5.35
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling futures_ringbuf v0.4.0
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking ringbuf v0.3.3
[INFO] [stderr]     Checking crc-catalog v2.4.0
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]     Checking crc v3.2.1
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]     Checking xmltree v0.10.3
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]    Compiling substring v1.4.5
[INFO] [stderr]     Checking arc-swap v1.7.1
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking waitgroup v0.1.2
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]    Compiling bumpalo v3.17.0
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling bstr v1.12.0
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling sha2 v0.10.8
[INFO] [stderr]     Checking yasna v0.5.2
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]     Checking glob v0.3.2
[INFO] [stderr]     Checking http-range-header v0.4.2
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking send_wrapper v0.6.0
[INFO] [stderr]    Compiling target-triple v0.1.4
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]     Checking winnow v0.7.6
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling shellexpand v3.1.0
[INFO] [stderr]     Checking globset v0.4.16
[INFO] [stderr]     Checking getrandom v0.1.16
[INFO] [stderr]     Checking termcolor v1.4.1
[INFO] [stderr]     Checking rmp v0.8.14
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]     Checking sysinfo v0.33.1
[INFO] [stderr]     Checking memory-stats v1.2.0
[INFO] [stderr]    Compiling rustix v1.0.5
[INFO] [stderr]     Checking proc-macro2 v1.0.94
[INFO] [stderr]     Checking jiff v0.2.6
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]     Checking heck v0.5.0
[INFO] [stderr]     Checking env_logger v0.8.4
[INFO] [stderr]     Checking stringmatch v0.4.0
[INFO] [stderr]    Compiling synstructure v0.13.1
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking env_filter v0.1.3
[INFO] [stderr]     Checking quickcheck v1.0.3
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking quote v1.0.40
[INFO] [stderr]     Checking quickcheck-ext v0.1.0 (/opt/rustwide/workdir/misc/quickcheck-ext)
[INFO] [stderr]    Migrating misc/quickcheck-ext/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling tracing-attributes v0.1.28
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.7.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]     Checking zeroize v1.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.10.3
[INFO] [stderr]    Compiling icu_provider_macros v1.5.0
[INFO] [stderr]     Checking tokio v1.44.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking der v0.7.9
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling data-encoding-macro-internal v0.1.15
[INFO] [stderr]     Checking data-encoding-macro v0.1.17
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking multibase v0.9.1
[INFO] [stderr]     Checking yoke v0.7.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]    Compiling async-trait v0.1.88
[INFO] [stderr]    Compiling libp2p-swarm-derive v0.35.1 (/opt/rustwide/workdir/swarm-derive)
[INFO] [stderr]    Migrating swarm-derive/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking zerovec v0.10.4
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking pin-project v1.1.10
[INFO] [stderr]     Checking rustls-webpki v0.103.1
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.20
[INFO] [stderr]     Checking block-padding v0.3.3
[INFO] [stderr]    Compiling asn1-rs-derive v0.5.1
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling asn1-rs-derive v0.6.0
[INFO] [stderr]    Compiling enum-as-inner v0.6.1
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling prometheus-client-derive-encode v0.5.0
[INFO] [stderr]     Checking tinystr v0.7.6
[INFO] [stderr]     Checking icu_collections v1.5.0
[INFO] [stderr]     Checking salsa20 v0.10.2
[INFO] [stderr]     Checking icu_locid v1.5.0
[INFO] [stderr]     Checking sha3 v0.10.8
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]     Checking asn1-rs v0.7.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking netlink-packet-utils v0.5.2
[INFO] [stderr]     Checking asn1-rs v0.6.2
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking netlink-packet-core v0.7.0
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking netlink-packet-route v0.17.1
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking asynchronous-codec v0.7.0
[INFO] [stderr]     Checking ed25519-dalek v2.1.1
[INFO] [stderr]     Checking icu_provider v1.5.0
[INFO] [stderr]     Checking unsigned-varint v0.8.0
[INFO] [stderr]     Checking futures-bounded v0.2.4
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking icu_locid_transform v1.5.0
[INFO] [stderr]     Checking k256 v0.13.4
[INFO] [stderr]     Checking serde v1.0.219
[INFO] [stderr]     Checking rw-stream-sink v0.4.0 (/opt/rustwide/workdir/misc/rw-stream-sink)
[INFO] [stderr]    Migrating misc/rw-stream-sink/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking yamux v0.12.1
[INFO] [stderr]        Fixed misc/rw-stream-sink/src/lib.rs (1 fix)
[INFO] [stderr]     Checking yamux v0.13.4
[INFO] [stderr]     Checking multihash v0.19.3
[INFO] [stderr]     Checking multistream-select v0.13.0 (/opt/rustwide/workdir/misc/multistream-select)
[INFO] [stderr]    Migrating misc/multistream-select/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking quick-protobuf-codec v0.3.1 (/opt/rustwide/workdir/misc/quick-protobuf-codec)
[INFO] [stderr]     Checking x25519-dalek v2.0.1
[INFO] [stderr]     Checking soketto v0.8.1
[INFO] [stderr]     Checking libp2p-pnet v0.26.0 (/opt/rustwide/workdir/transports/pnet)
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking md-5 v0.10.6
[INFO] [stderr]     Checking p384 v0.13.1
[INFO] [stderr]     Checking der-parser v9.0.0
[INFO] [stderr]     Checking ccm v0.5.0
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/multistream-select/src/dialer_select.rs:103:19
[INFO] [stdout]      |
[INFO] [stdout]  103 |             match mem::replace(this.state, State::Done) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                   up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  104 |                 State::SendHeader { mut io } => {
[INFO] [stdout]      |                                     ------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `io` calls a custom destructor
[INFO] [stdout]      |                                     `io` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  118 |                     let protocol = this.protocols.next().ok_or(NegotiationError::Failed)?;
[INFO] [stdout]      |                                    ------------------------------------------------------
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                    `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  125 |                 State::SendProtocol { mut io, protocol } => {
[INFO] [stdout]      |                                       ------  --------
[INFO] [stdout]      |                                       |       |
[INFO] [stdout]      |                                       |       `protocol` calls a custom destructor
[INFO] [stdout]      |                                       |       `protocol` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  159 |                 State::FlushProtocol { mut io, protocol } => {
[INFO] [stdout]      |                                        ------  --------
[INFO] [stdout]      |                                        |       |
[INFO] [stdout]      |                                        |       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        |       `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  169 |                 State::AwaitProtocol { mut io, protocol } => {
[INFO] [stdout]      |                                        ------  --------
[INFO] [stdout]      |                                        |       |
[INFO] [stdout]      |                                        |       this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                        |       `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                        `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  196 |                             let protocol = this.protocols.next().ok_or(NegotiationError::Failed)?;
[INFO] [stdout]      |                                            ------------------------------------------------------
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                            `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  205 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `io` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating misc/quick-protobuf-codec/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/multistream-select/src/listener_select.rs:128:19
[INFO] [stdout]      |
[INFO] [stdout]  128 |             match mem::replace(this.state, State::Done) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  129 |                 State::RecvHeader { mut io } => {
[INFO] [stdout]      |                                     ------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `io` calls a custom destructor
[INFO] [stdout]      |                                     `io` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  149 |                 State::SendHeader { mut io } => {
[INFO] [stdout]      |                                     ------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  167 |                 State::RecvMessage { mut io } => {
[INFO] [stdout]      |                                      ------
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                      `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  253 |                     mut io,
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  254 |                     message,
[INFO] [stdout]  255 |                     protocol,
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `protocol` calls a custom destructor
[INFO] [stdout]      |                     `protocol` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  283 |                 State::Flush { mut io, protocol } => {
[INFO] [stdout]      |                                ------  --------
[INFO] [stdout]      |                                |       |
[INFO] [stdout]      |                                |       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                |       `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  310 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `io` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking cbc v0.1.2
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/multistream-select/src/negotiated.rs:140:19
[INFO] [stdout]      |
[INFO] [stdout]  140 |             match mem::replace(&mut *this.state, State::Invalid) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  141 |                 State::Expecting {
[INFO] [stdout]  142 |                     mut io,
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `io` calls a custom destructor
[INFO] [stdout]      |                     `io` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  190 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `io` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> misc/multistream-select/src/protocol.rs:394:18
[INFO] [stdout]     |
[INFO] [stdout] 394 |     let msg = if let Some(msg) = ready!(stream.poll_next(cx)?) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^-----------------------------
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> misc/multistream-select/src/protocol.rs:399:5
[INFO] [stdout]     |
[INFO] [stdout] 399 |     } else {
[INFO] [stdout]     |     ^
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Migrating transports/pnet/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking rust-embed-utils v8.7.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]     Checking der-parser v10.0.0
[INFO] [stderr]     Checking icu_properties v1.5.1
[INFO] [stderr]    Compiling thirtyfour-macros v0.1.3
[INFO] [stderr]     Checking x509-parser v0.16.0
[INFO] [stderr]     Checking clap v4.5.35
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking opentelemetry v0.27.1
[INFO] [stderr]    Compiling prost-derive v0.13.5
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]     Checking netlink-sys v0.8.7
[INFO] [stderr]     Checking tokio-util v0.7.14
[INFO] [stderr]     Checking x509-parser v0.17.0
[INFO] [stderr]     Checking webrtc-util v0.10.0
[INFO] [stderr]     Checking tower v0.5.2
[INFO] [stderr]     Checking netlink-proto v0.11.5
[INFO] [stderr]    Compiling rust-embed-impl v8.7.0
[INFO] [stderr]     Checking rtnetlink v0.13.1
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.50
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]     Checking rcgen v0.13.2
[INFO] [stderr]     Checking cuckoofilter v0.5.0
[INFO] [stderr]     Checking libp2p-identity v0.2.12 (/opt/rustwide/workdir/identity)
[INFO] [stderr]     Checking if-watch v3.2.1
[INFO] [stderr]     Checking h2 v0.4.8
[INFO] [stderr]    Migrating identity/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking cbor4ii v0.3.3
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking serde_path_to_error v0.1.17
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking futures-rustls v0.26.0
[INFO] [stderr]     Checking quinn-proto v0.11.10
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]     Checking rust-embed v8.7.0
[INFO] [stderr]     Checking tower-http v0.5.2
[INFO] [stderr]     Checking tokio-rustls v0.26.2
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking tower v0.4.13
[INFO] [stderr]        Fixed identity/src/peer_id.rs (1 fix)
[INFO] [stderr]     Checking toml_datetime v0.6.8
[INFO] [stderr]     Checking serde_spanned v0.6.8
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking prost v0.13.5
[INFO] [stderr]     Checking rmp-serde v1.3.0
[INFO] [stderr]     Checking tempfile v3.19.1
[INFO] [stderr]     Checking icu_normalizer v1.5.0
[INFO] [stderr]     Checking toml_edit v0.22.24
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking js-sys v0.3.77
[INFO] [stderr]     Checking idna_adapter v1.2.0
[INFO] [stderr]     Checking opentelemetry_sdk v0.27.1
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking idna v1.0.3
[INFO] [stderr]     Checking rtp v0.12.0
[INFO] [stderr]     Checking url v2.5.4
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/multistream-select/src/dialer_select.rs:103:19
[INFO] [stdout]      |
[INFO] [stdout]  103 |             match mem::replace(this.state, State::Done) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                   up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  104 |                 State::SendHeader { mut io } => {
[INFO] [stdout]      |                                     ------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `io` calls a custom destructor
[INFO] [stdout]      |                                     `io` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  118 |                     let protocol = this.protocols.next().ok_or(NegotiationError::Failed)?;
[INFO] [stdout]      |                                    ------------------------------------------------------
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                    `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  125 |                 State::SendProtocol { mut io, protocol } => {
[INFO] [stdout]      |                                       ------  --------
[INFO] [stdout]      |                                       |       |
[INFO] [stdout]      |                                       |       `protocol` calls a custom destructor
[INFO] [stdout]      |                                       |       `protocol` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  159 |                 State::FlushProtocol { mut io, protocol } => {
[INFO] [stdout]      |                                        ------  --------
[INFO] [stdout]      |                                        |       |
[INFO] [stdout]      |                                        |       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        |       `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  169 |                 State::AwaitProtocol { mut io, protocol } => {
[INFO] [stdout]      |                                        ------  --------
[INFO] [stdout]      |                                        |       |
[INFO] [stdout]      |                                        |       this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                        |       `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                        `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  196 |                             let protocol = this.protocols.next().ok_or(NegotiationError::Failed)?;
[INFO] [stdout]      |                                            ------------------------------------------------------
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                            `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  205 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `io` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> misc/multistream-select/src/dialer_select.rs:374:15
[INFO] [stdout]     |
[INFO] [stdout] 358 |         let (client_connection, _server_connection) =
[INFO] [stdout]     |                                 ------------------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 `_server_connection` calls a custom destructor
[INFO] [stdout]     |                                 `_server_connection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 374 |         match tokio::time::timeout(Duration::from_secs(10), client).await {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |               |                                                     |
[INFO] [stdout]     |               |                                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |               |                                                     up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 380 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/runtime/time/entry.rs:652:1
[INFO] [stdout]     |
[INFO] [stdout] 652 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/runtime/task/join.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_server_connection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures_ringbuf-0.4.0/src/endpoint.rs:102:1
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl Drop for Endpoint
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> misc/multistream-select/src/dialer_select.rs:374:69
[INFO] [stdout]     |
[INFO] [stdout] 358 |         let (client_connection, _server_connection) =
[INFO] [stdout]     |                                 ------------------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 `_server_connection` calls a custom destructor
[INFO] [stdout]     |                                 `_server_connection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 374 |         match tokio::time::timeout(Duration::from_secs(10), client).await {
[INFO] [stdout]     |                                                                     ^^^^^
[INFO] [stdout]     |                                                                     |
[INFO] [stdout]     |                                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 380 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/runtime/time/entry.rs:652:1
[INFO] [stdout]     |
[INFO] [stdout] 652 | impl Drop for TimerEntry {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/runtime/task/join.rs:351:1
[INFO] [stdout]     |
[INFO] [stdout] 351 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_server_connection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures_ringbuf-0.4.0/src/endpoint.rs:102:1
[INFO] [stdout]     |
[INFO] [stdout] 102 | impl Drop for Endpoint
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/multistream-select/src/listener_select.rs:128:19
[INFO] [stdout]      |
[INFO] [stdout]  128 |             match mem::replace(this.state, State::Done) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                   up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  129 |                 State::RecvHeader { mut io } => {
[INFO] [stdout]      |                                     ------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `io` calls a custom destructor
[INFO] [stdout]      |                                     `io` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  149 |                 State::SendHeader { mut io } => {
[INFO] [stdout]      |                                     ------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  167 |                 State::RecvMessage { mut io } => {
[INFO] [stdout]      |                                      ------
[INFO] [stdout]      |                                      |
[INFO] [stdout]      |                                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                      `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  253 |                     mut io,
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  254 |                     message,
[INFO] [stdout]  255 |                     protocol,
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `protocol` calls a custom destructor
[INFO] [stdout]      |                     `protocol` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  283 |                 State::Flush { mut io, protocol } => {
[INFO] [stdout]      |                                ------  --------
[INFO] [stdout]      |                                |       |
[INFO] [stdout]      |                                |       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                |       `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  310 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `io` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/multistream-select/src/negotiated.rs:140:19
[INFO] [stdout]      |
[INFO] [stdout]  140 |             match mem::replace(&mut *this.state, State::Invalid) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  141 |                 State::Expecting {
[INFO] [stdout]  142 |                     mut io,
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `io` calls a custom destructor
[INFO] [stdout]      |                     `io` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  190 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `io` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> misc/multistream-select/src/protocol.rs:394:18
[INFO] [stdout]     |
[INFO] [stdout] 394 |     let msg = if let Some(msg) = ready!(stream.poll_next(cx)?) {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^-----------------------------
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> misc/multistream-select/src/protocol.rs:399:5
[INFO] [stdout]     |
[INFO] [stdout] 399 |     } else {
[INFO] [stdout]     |     ^
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rtcp v0.12.0
[INFO] [stderr]     Checking webrtc-sctp v0.11.0
[INFO] [stderr]     Checking webrtc-mdns v0.8.0
[INFO] [stderr]     Checking webrtc-dtls v0.11.0
[INFO] [stderr]     Checking webrtc-media v0.9.0
[INFO] [stderr]     Checking multiaddr v0.18.2
[INFO] [stderr]     Checking hickory-proto v0.25.2
[INFO] [stderr]     Checking attohttpc v0.24.1
[INFO] [stderr]     Checking stun v0.7.0
[INFO] [stderr]     Checking sdp v0.7.0
[INFO] [stderr]     Checking webrtc-srtp v0.14.0
[INFO] [stderr]     Checking keygen v0.1.0 (/opt/rustwide/workdir/misc/keygen)
[INFO] [stderr]    Migrating misc/keygen/src/main.rs from 2021 edition to 2024
[INFO] [stderr]     Checking turn v0.9.0
[INFO] [stderr]     Checking libp2p-core v0.43.1 (/opt/rustwide/workdir/core)
[INFO] [stderr]     Checking toml v0.8.20
[INFO] [stderr]    Migrating core/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking interceptor v0.13.0
[INFO] [stderr]     Checking trybuild v1.0.104
[INFO] [stderr]     Checking tracing-opentelemetry v0.28.0
[INFO] [stderr]     Checking webrtc-data v0.10.0
[INFO] [stderr]     Checking webrtc-ice v0.12.0
[INFO] [stderr]     Checking web-sys v0.3.77
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.50
[INFO] [stderr]     Checking wasm-bindgen-test v0.3.50
[INFO] [stderr]    Migrating identity/tests/keypair_api.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `libp2p_core`
[INFO] [stderr]  --> core/src/transport/global_only.rs
[INFO] [stderr]  ::: core/src/transport/memory.rs
[INFO] [stderr]  ::: core/src/upgrade/apply.rs
[INFO] [stderr]   = cause: error[E0308]: mismatched types
[INFO] [stderr]               --> core/src/transport/global_only.rs:330:34
[INFO] [stderr]                |
[INFO] [stderr]            281 | impl<T: crate::Transport + Unpin> crate::Transport for Transport<T> {
[INFO] [stderr]                |      - found this type parameter
[INFO] [stderr]            ...
[INFO] [stderr]            330 |         Transport::poll(Pin::new(&mut self.inner), cx)
[INFO] [stderr]                |                         -------- ^^^^^^^^^^^^^^^ expected `&mut Transport<_>`, found `&mut T`
[INFO] [stderr]                |                         |
[INFO] [stderr]                |                         arguments to this function are incorrect
[INFO] [stderr]                |
[INFO] [stderr]                = note: expected mutable reference `&mut global_only::Transport<_>`
[INFO] [stderr]                           found mutable reference `&mut T`
[INFO] [stderr]            note: associated function defined here
[INFO] [stderr]               --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/pin.rs:1181:17
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            warning: relative drop order changing in Rust 2024
[INFO] [stderr]                --> core/src/transport/memory.rs:244:40
[INFO] [stderr]                 |
[INFO] [stderr]             244 |         while let Some(mut listener) = self.listeners.pop_back() {
[INFO] [stderr]                 |                        ------------    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 |                        |               |
[INFO] [stderr]                 |                        |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stderr]                 |                        |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]                 |                        `listener` calls a custom destructor
[INFO] [stderr]                 |                        `listener` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]             256 |             let event = match Stream::poll_next(Pin::new(&mut listener.receiver), cx) {
[INFO] [stderr]                 |                 -----         -------------------------------------------------------
[INFO] [stderr]                 |                 |             |
[INFO] [stderr]                 |                 |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stderr]                 |                 |             `#1` will be dropped later as of Edition 2024
[INFO] [stderr]                 |                 `event` calls a custom destructor
[INFO] [stderr]                 |                 `event` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]             282 |         }
[INFO] [stderr]                 |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stderr]                 |
[INFO] [stderr]            note: `#2` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stderr]                 |
[INFO] [stderr]            1105 | impl<T> Drop for Receiver<T> {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `listener` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stderr]                 |
[INFO] [stderr]            1105 | impl<T> Drop for Receiver<T> {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `event` invokes this custom destructor
[INFO] [stderr]                --> core/src/transport/memory.rs:397:1
[INFO] [stderr]                 |
[INFO] [stderr]             397 | impl<T> Drop for Chan<T> {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `#1` invokes this custom destructor
[INFO] [stderr]                --> core/src/transport/memory.rs:397:1
[INFO] [stderr]                 |
[INFO] [stderr]             397 | impl<T> Drop for Chan<T> {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stderr]                 = warning: this changes meaning in Rust 2024
[INFO] [stderr]                 = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stderr]                 = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            warning: relative drop order changing in Rust 2024
[INFO] [stderr]                --> core/src/upgrade/apply.rs:127:19
[INFO] [stderr]                 |
[INFO] [stderr]             127 |               match mem::replace(&mut self.inner, InboundUpgradeApplyState::Undefined) {
[INFO] [stderr]                 |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 |                     |
[INFO] [stderr]                 |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stderr]                 |                     up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]             128 |                   InboundUpgradeApplyState::Init {
[INFO] [stderr]             129 |                       mut future,
[INFO] [stderr]                 |                       ----------
[INFO] [stderr]                 |                       |
[INFO] [stderr]                 |                       `future` calls a custom destructor
[INFO] [stderr]                 |                       `future` will be dropped later as of Edition 2024
[INFO] [stderr]             130 |                       upgrade,
[INFO] [stderr]                 |                       -------
[INFO] [stderr]                 |                       |
[INFO] [stderr]                 |                       `upgrade` calls a custom destructor
[INFO] [stderr]                 |                       `upgrade` will be dropped later as of Edition 2024
[INFO] [stderr]             131 |                   } => {
[INFO] [stderr]             132 |                       let (info, io) = match Future::poll(Pin::new(&mut future), cx)? {
[INFO] [stderr]                 |                            ----        -     ----------------------------------------
[INFO] [stderr]                 |                            |           |     |
[INFO] [stderr]                 |                            |           |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stderr]                 |                            |           |     `#2` will be dropped later as of Edition 2024
[INFO] [stderr]                 |                            |           |     this value will be stored in a temporary; let us call it `#3`
[INFO] [stderr]                 |  __________________________|___________|     `#3` will be dropped later as of Edition 2024
[INFO] [stderr]                 | |                          |
[INFO] [stderr]                 | |                          `info` calls a custom destructor
[INFO] [stderr]                 | |                          `info` will be dropped later as of Edition 2024
[INFO] [stderr]             133 | |                         Poll::Ready(x) => x,
[INFO] [stderr]             134 | |                         Poll::Pending => {
[INFO] [stderr]             135 | |                             self.inner = InboundUpgradeApplyState::Init { future, upgrade };
[INFO] [stderr]            ...    |
[INFO] [stderr]             138 | |                     };
[INFO] [stderr]                 | |                     -
[INFO] [stderr]                 | |                     |
[INFO] [stderr]                 | |_____________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stderr]                 |                       `#1` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]             144 |                   InboundUpgradeApplyState::Upgrade { mut future, name } => {
[INFO] [stderr]                 |                                                       ----------
[INFO] [stderr]                 |                                                       |
[INFO] [stderr]                 |                                                       this value will be stored in a temporary; let us call it `#4`
[INFO] [stderr]                 |                                                       `#4` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]             164 |           }
[INFO] [stderr]                 |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stderr]                 |
[INFO] [stderr]            note: `#5` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `#5` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stderr]                 |
[INFO] [stderr]            2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `future` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `future` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stderr]                 |
[INFO] [stderr]            2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `#1` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `#2` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `#3` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stderr]                 = warning: this changes meaning in Rust 2024
[INFO] [stderr]                 = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            warning: relative drop order changing in Rust 2024
[INFO] [stderr]                --> core/src/upgrade/apply.rs:209:19
[INFO] [stderr]                 |
[INFO] [stderr]             209 |               match mem::replace(&mut self.inner, OutboundUpgradeApplyState::Undefined) {
[INFO] [stderr]                 |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]                 |                     |
[INFO] [stderr]                 |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stderr]                 |                     up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stderr]             210 |                   OutboundUpgradeApplyState::Init {
[INFO] [stderr]             211 |                       mut future,
[INFO] [stderr]                 |                       ----------
[INFO] [stderr]                 |                       |
[INFO] [stderr]                 |                       `future` calls a custom destructor
[INFO] [stderr]                 |                       `future` will be dropped later as of Edition 2024
[INFO] [stderr]             212 |                       upgrade,
[INFO] [stderr]                 |                       -------
[INFO] [stderr]                 |                       |
[INFO] [stderr]                 |                       `upgrade` calls a custom destructor
[INFO] [stderr]                 |                       `upgrade` will be dropped later as of Edition 2024
[INFO] [stderr]             213 |                   } => {
[INFO] [stderr]             214 |                       let (info, connection) = match Future::poll(Pin::new(&mut future), cx)? {
[INFO] [stderr]                 |                            ----                -     ----------------------------------------
[INFO] [stderr]                 |                            |                   |     |
[INFO] [stderr]                 |                            |                   |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stderr]                 |                            |                   |     `#2` will be dropped later as of Edition 2024
[INFO] [stderr]                 |                            |                   |     this value will be stored in a temporary; let us call it `#3`
[INFO] [stderr]                 |  __________________________|___________________|     `#3` will be dropped later as of Edition 2024
[INFO] [stderr]                 | |                          |
[INFO] [stderr]                 | |                          `info` calls a custom destructor
[INFO] [stderr]                 | |                          `info` will be dropped later as of Edition 2024
[INFO] [stderr]             215 | |                         Poll::Ready(x) => x,
[INFO] [stderr]             216 | |                         Poll::Pending => {
[INFO] [stderr]             217 | |                             self.inner = OutboundUpgradeApplyState::Init { future, upgrade };
[INFO] [stderr]            ...    |
[INFO] [stderr]             220 | |                     };
[INFO] [stderr]                 | |                     -
[INFO] [stderr]                 | |                     |
[INFO] [stderr]                 | |_____________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stderr]                 |                       `#1` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]             226 |                   OutboundUpgradeApplyState::Upgrade { mut future, name } => {
[INFO] [stderr]                 |                                                        ----------
[INFO] [stderr]                 |                                                        |
[INFO] [stderr]                 |                                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stderr]                 |                                                        `#4` will be dropped later as of Edition 2024
[INFO] [stderr]            ...
[INFO] [stderr]             246 |           }
[INFO] [stderr]                 |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stderr]                 |
[INFO] [stderr]            note: `#5` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `future` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]            note: `#1` invokes this custom destructor
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stderr]                 |
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]   --> core/src/either.rs:88:44
[INFO] [stdout]    |
[INFO] [stdout] 88 |             future::Either::Left(inner) => inner.poll(cx).map_err(Either::Left),
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^ help: disambiguate the associated function: `StreamMuxer::poll(inner, cx)`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout]    = note: `--force-warn rust-2024-prelude-collisions` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]   --> core/src/either.rs:89:45
[INFO] [stdout]    |
[INFO] [stdout] 89 |             future::Either::Right(inner) => inner.poll(cx).map_err(Either::Right),
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^ help: disambiguate the associated function: `StreamMuxer::poll(inner, cx)`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            note: `#2` invokes this custom destructor
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/either.rs:137:38
[INFO] [stdout]     |
[INFO] [stdout] 137 |             Either::Left(a) => match a.poll(cx) {
[INFO] [stdout]     |                                      ^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(a, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/either.rs:143:39
[INFO] [stdout]     |
[INFO] [stdout] 143 |             Either::Right(b) => match b.poll(cx) {
[INFO] [stdout]     |                                       ^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(b, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 |
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]   --> core/src/muxing/boxed.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |         self.project().inner.poll(cx).map_err(into_io_error)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `StreamMuxer::poll(self.project().inner, cx)`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/muxing.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |         Pin::new(self).poll(cx)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `StreamMuxer::poll(Pin::new(self), cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/and_then.rs:107:15
[INFO] [stdout]     |
[INFO] [stdout] 107 |         match this.transport.poll(cx) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.transport, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            note: `#3` invokes this custom destructor
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/choice.rs:155:15
[INFO] [stdout]     |
[INFO] [stdout] 155 |         match this.0.poll(cx) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.0, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/choice.rs:161:15
[INFO] [stdout]     |
[INFO] [stdout] 161 |         match this.1.poll(cx) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.1, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 |
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/global_only.rs:330:9
[INFO] [stdout]     |
[INFO] [stdout] 330 |         Pin::new(&mut self.inner).poll(cx)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(Pin::new(&mut self.inner), cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            1123 | impl Drop for BytesMut {
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/map.rs:102:15
[INFO] [stdout]     |
[INFO] [stdout] 102 |         match this.transport.poll(cx) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.transport, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]   --> core/src/transport/map_err.rs:95:9
[INFO] [stdout]    |
[INFO] [stdout] 95 |         this.transport.poll(cx).map(|ev| {
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.transport, cx)`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/timeout.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |         this.inner.poll(cx).map(|event| {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.inner, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 = warning: this changes meaning in Rust 2024
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/upgrade.rs:363:9
[INFO] [stdout]     |
[INFO] [stdout] 363 |         self.project().0.poll(cx)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(self.project().0, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                 = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/upgrade.rs:436:9
[INFO] [stdout]     |
[INFO] [stdout] 436 |         this.inner.poll(cx).map(|event| {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.inner, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/boxed.rs:108:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |         self.poll(cx).map(|event| {
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(self, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> core/src/transport/optional.rs:105:13
[INFO] [stdout]     |
[INFO] [stdout] 105 |             inner.poll(cx)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(inner, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error: aborting due to 1 previous error; 3 warnings emitted
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> core/src/transport/memory.rs:244:40
[INFO] [stdout]      |
[INFO] [stdout]  244 |         while let Some(mut listener) = self.listeners.pop_back() {
[INFO] [stdout]      |                        ------------    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                        |               |
[INFO] [stdout]      |                        |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                        |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        `listener` calls a custom destructor
[INFO] [stdout]      |                        `listener` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  256 |             let event = match Stream::poll_next(Pin::new(&mut listener.receiver), cx) {
[INFO] [stdout]      |                 -----         -------------------------------------------------------
[INFO] [stdout]      |                 |             |
[INFO] [stdout]      |                 |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                 |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 `event` calls a custom destructor
[INFO] [stdout]      |                 `event` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  282 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `listener` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> core/src/transport/memory.rs:397:1
[INFO] [stdout]      |
[INFO] [stdout]  397 | impl<T> Drop for Chan<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> core/src/transport/memory.rs:397:1
[INFO] [stdout]      |
[INFO] [stdout]  397 | impl<T> Drop for Chan<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> core/src/upgrade/apply.rs:127:19
[INFO] [stdout]      |
[INFO] [stdout]  127 |               match mem::replace(&mut self.inner, InboundUpgradeApplyState::Undefined) {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  128 |                   InboundUpgradeApplyState::Init {
[INFO] [stdout]  129 |                       mut future,
[INFO] [stdout]      |                       ----------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `future` calls a custom destructor
[INFO] [stdout]      |                       `future` will be dropped later as of Edition 2024
[INFO] [stdout]  130 |                       upgrade,
[INFO] [stdout]      |                       -------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `upgrade` calls a custom destructor
[INFO] [stdout]      |                       `upgrade` will be dropped later as of Edition 2024
[INFO] [stdout]  131 |                   } => {
[INFO] [stdout]  132 |                       let (info, io) = match Future::poll(Pin::new(&mut future), cx)? {
[INFO] [stdout]      |                            ----        -     ----------------------------------------
[INFO] [stdout]      |                            |           |     |
[INFO] [stdout]      |                            |           |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            |           |     `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |           |     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |  __________________________|___________|     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                          |
[INFO] [stdout]      | |                          `info` calls a custom destructor
[INFO] [stdout]      | |                          `info` will be dropped later as of Edition 2024
[INFO] [stdout]  133 | |                         Poll::Ready(x) => x,
[INFO] [stdout]  134 | |                         Poll::Pending => {
[INFO] [stdout]  135 | |                             self.inner = InboundUpgradeApplyState::Init { future, upgrade };
[INFO] [stdout] ...    |
[INFO] [stdout]  138 | |                     };
[INFO] [stdout]      | |                     -
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |_____________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  144 |                   InboundUpgradeApplyState::Upgrade { mut future, name } => {
[INFO] [stdout]      |                                                       ----------
[INFO] [stdout]      |                                                       |
[INFO] [stdout]      |                                                       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                       `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  164 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `future` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `future` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> core/src/upgrade/apply.rs:209:19
[INFO] [stdout]      |
[INFO] [stdout]  209 |               match mem::replace(&mut self.inner, OutboundUpgradeApplyState::Undefined) {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                     up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  210 |                   OutboundUpgradeApplyState::Init {
[INFO] [stdout]  211 |                       mut future,
[INFO] [stdout]      |                       ----------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `future` calls a custom destructor
[INFO] [stdout]      |                       `future` will be dropped later as of Edition 2024
[INFO] [stdout]  212 |                       upgrade,
[INFO] [stdout]      |                       -------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `upgrade` calls a custom destructor
[INFO] [stdout]      |                       `upgrade` will be dropped later as of Edition 2024
[INFO] [stdout]  213 |                   } => {
[INFO] [stdout]  214 |                       let (info, connection) = match Future::poll(Pin::new(&mut future), cx)? {
[INFO] [stdout]      |                            ----                -     ----------------------------------------
[INFO] [stdout]      |                            |                   |     |
[INFO] [stdout]      |                            |                   |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            |                   |     `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |                   |     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |  __________________________|___________________|     `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                          |
[INFO] [stdout]      | |                          `info` calls a custom destructor
[INFO] [stdout]      | |                          `info` will be dropped later as of Edition 2024
[INFO] [stdout]  215 | |                         Poll::Ready(x) => x,
[INFO] [stdout]  216 | |                         Poll::Pending => {
[INFO] [stdout]  217 | |                             self.inner = OutboundUpgradeApplyState::Init { future, upgrade };
[INFO] [stdout] ...    |
[INFO] [stdout]  220 | |                     };
[INFO] [stdout]      | |                     -
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |_____________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  226 |                   OutboundUpgradeApplyState::Upgrade { mut future, name } => {
[INFO] [stdout]      |                                                        ----------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  246 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `future` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            For more information about this error, try `rustc --explain E0308`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]     Checking libp2p-swarm v0.47.0 (/opt/rustwide/workdir/swarm)
[INFO] [stderr]     Checking libp2p-yamux v0.47.0 (/opt/rustwide/workdir/muxers/yamux)
[INFO] [stderr]     Checking libp2p-tcp v0.44.0 (/opt/rustwide/workdir/transports/tcp)
[INFO] [stderr]    Migrating identity/benches/peer_id.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-noise v0.46.1 (/opt/rustwide/workdir/transports/noise)
[INFO] [stderr]    Migrating identity/tests/serde.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-tls v0.6.2 (/opt/rustwide/workdir/transports/tls)
[INFO] [stderr]     Checking libp2p-websocket v0.45.2 (/opt/rustwide/workdir/transports/websocket)
[INFO] [stderr]     Checking libp2p-plaintext v0.43.0 (/opt/rustwide/workdir/transports/plaintext)
[INFO] [stderr]    Migrating misc/quick-protobuf-codec/tests/large_message.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-mplex v0.43.1 (/opt/rustwide/workdir/muxers/mplex)
[INFO] [stderr]     Checking libp2p-muxer-test-harness v0.1.0 (/opt/rustwide/workdir/muxers/test-harness)
[INFO] [stderr]     Checking hyper v1.6.0
[INFO] [stderr]     Checking hickory-resolver v0.25.2
[INFO] [stderr]    Migrating misc/quick-protobuf-codec/benches/codec.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-uds v0.43.0 (/opt/rustwide/workdir/transports/uds)
[INFO] [stderr]    Migrating transports/tcp/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking redis v0.24.0
[INFO] [stderr]     Checking libp2p-dns v0.44.0 (/opt/rustwide/workdir/transports/dns)
[INFO] [stderr]    Migrating muxers/yamux/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/tcp/src/lib.rs:418:15
[INFO] [stdout]      |
[INFO] [stdout]  408 |     #[tracing::instrument(level = "trace", name = "Transport::poll", skip(self, cx))]
[INFO] [stdout]      |     ---------------------------------------------------------------------------------
[INFO] [stdout]      |     |                                                                               |
[INFO] [stdout]      |     |                                                                               now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |     `__tracing_attr_span` calls a custom destructor
[INFO] [stdout]      |     `__tracing_attr_span` will be dropped later as of Edition 2024
[INFO] [stdout]      |     `__tracing_attr_guard` calls a custom destructor
[INFO] [stdout]      |     `__tracing_attr_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  418 |         match self.listeners.poll_next_unpin(cx) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `__tracing_attr_span` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:1449:1
[INFO] [stdout]      |
[INFO] [stdout] 1449 | impl Drop for Span {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__tracing_attr_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:1559:1
[INFO] [stdout]      |
[INFO] [stdout] 1559 | impl<'a> Drop for Entered<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating swarm/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking hyper-util v0.1.11
[INFO] [stderr]     Checking webrtc v0.12.0
[INFO] [stderr]     Checking igd-next v0.16.1
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking hyper-rustls v0.27.5
[INFO] [stderr]     Checking reqwest v0.12.15
[INFO] [stderr]     Checking hyper-timeout v0.5.2
[INFO] [stderr]    Migrating transports/noise/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed swarm/src/connection/pool.rs (1 fix)
[INFO] [stderr]        Fixed swarm/src/behaviour/peer_addresses.rs (1 fix)
[INFO] [stderr]        Fixed swarm/src/lib.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> swarm/src/connection/pool/task.rs:180:15
[INFO] [stdout]     |
[INFO] [stdout] 180 |           match futures::future::select(
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 181 | |             command_receiver.next(),
[INFO] [stdout] 182 | |             poll_fn(|cx| Pin::new(&mut connection).poll(cx)),
[INFO] [stdout] 183 | |         )
[INFO] [stdout] 184 | |         .await
[INFO] [stdout]     | |          ----^
[INFO] [stdout]     | |          |   |
[INFO] [stdout]     | |__________|___this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     |            |   up until Edition 2021 `#12` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 185 |           {
[INFO] [stdout] 186 |               Either::Left((Some(command), _)) => match command {
[INFO] [stdout]     |                                  -------
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  `command` calls a custom destructor
[INFO] [stdout]     |                                  `command` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 190 |                       let (remaining_events, closing_muxer) = connection.close();
[INFO] [stdout]     |                                              -------------    ------------------
[INFO] [stdout]     |                                              |                |
[INFO] [stdout]     |                                              |                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                              |                `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                              `closing_muxer` calls a custom destructor
[INFO] [stdout]     |                                              `closing_muxer` will be dropped later as of Edition 2024
[INFO] [stdout] 191 |
[INFO] [stdout] 192 |                       let _ = events
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]     | |_____________________________|
[INFO] [stdout] 193 |                           .send_all(&mut remaining_events.map(|event| {
[INFO] [stdout]     |  ________________________________________-
[INFO] [stdout]     |  ________________________________________|
[INFO] [stdout]     | |
[INFO] [stdout] 194 | |                             Ok(EstablishedConnectionEvent::Notify {
[INFO] [stdout] 195 | |                                 id: connection_id,
[INFO] [stdout] 196 | |                                 event,
[INFO] [stdout] 197 | |                                 peer_id,
[INFO] [stdout] 198 | |                             })
[INFO] [stdout] 199 | |                         }))
[INFO] [stdout]     | |                          -
[INFO] [stdout]     | |__________________________|
[INFO] [stdout]     | |__________________________this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 200 | |                         .await;
[INFO] [stdout]     | |                              -
[INFO] [stdout]     | |______________________________|
[INFO] [stdout]     | |______________________________`__awaitee` calls a custom destructor
[INFO] [stdout]     |                                `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 201 |
[INFO] [stdout] 202 | |                     let error = closing_muxer.await.err().map(ConnectionError::IO);
[INFO] [stdout]     | |                                 -------------------
[INFO] [stdout]     | |                                 |
[INFO] [stdout]     | |                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     | |                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] 203 | |
[INFO] [stdout] 204 |                       let _ = events
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]     | |_____________________________|
[INFO] [stdout] 205 | |                         .send(EstablishedConnectionEvent::Closed {
[INFO] [stdout] 206 | |                             id: connection_id,
[INFO] [stdout] 207 | |                             peer_id,
[INFO] [stdout] 208 | |                             error,
[INFO] [stdout] 209 | |                         })
[INFO] [stdout] 210 | |                         .await;
[INFO] [stdout]     | |                              -
[INFO] [stdout]     | |______________________________|
[INFO] [stdout]     | |______________________________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 218 | |             Either::Right((event, _)) => {
[INFO] [stdout]     | |                            -----
[INFO] [stdout]     | |                            |
[INFO] [stdout]     | |                            `event` calls a custom destructor
[INFO] [stdout]     | |                            `event` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 221 |                           let _ = events
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout]     | |_________________________________|
[INFO] [stdout] 222 | |                             .send(EstablishedConnectionEvent::Notify {
[INFO] [stdout] 223 | |                                 id: connection_id,
[INFO] [stdout] 224 | |                                 peer_id,
[INFO] [stdout] 225 | |                                 event,
[INFO] [stdout] 226 | |                             })
[INFO] [stdout] 227 | |                             .await;
[INFO] [stdout]     | |                                  -
[INFO] [stdout]     | |__________________________________|
[INFO] [stdout]     | |__________________________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 230 |                           let _ = events
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout]     | |_________________________________|
[INFO] [stdout] 231 | |                             .send(EstablishedConnectionEvent::AddressChange {
[INFO] [stdout] 232 | |                                 id: connection_id,
[INFO] [stdout] 233 | |                                 peer_id,
[INFO] [stdout] 234 | |                                 new_address,
[INFO] [stdout] 235 | |                             })
[INFO] [stdout] 236 | |                             .await;
[INFO] [stdout]     | |                                  -
[INFO] [stdout]     | |__________________________________|
[INFO] [stdout]     | |__________________________________this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                                    `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 240 | |                         let (remaining_events, _closing_muxer) = connection.close();
[INFO] [stdout]     | |                                                --------------    ------------------
[INFO] [stdout]     | |                                                |                 |
[INFO] [stdout]     | |                                                |                 this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     | |                                                |                 `#8` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                                `_closing_muxer` calls a custom destructor
[INFO] [stdout]     | |                                                `_closing_muxer` will be dropped later as of Edition 2024
[INFO] [stdout] 241 | |
[INFO] [stdout] 242 |                           let _ = events
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout]     | |_________________________________|
[INFO] [stdout] 243 |                               .send_all(&mut remaining_events.map(|event| {
[INFO] [stdout]     |  ____________________________________________-
[INFO] [stdout]     |  ____________________________________________|
[INFO] [stdout]     | |
[INFO] [stdout] 244 | |                                 Ok(EstablishedConnectionEvent::Notify {
[INFO] [stdout] 245 | |                                     id: connection_id,
[INFO] [stdout] 246 | |                                     event,
[INFO] [stdout] 247 | |                                     peer_id,
[INFO] [stdout] 248 | |                                 })
[INFO] [stdout] 249 | |                             }))
[INFO] [stdout]     | |                              -
[INFO] [stdout]     | |______________________________|
[INFO] [stdout]     | |______________________________this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                                `#9` will be dropped later as of Edition 2024
[INFO] [stdout] 250 | |                             .await;
[INFO] [stdout]     | |                                  -
[INFO] [stdout]     | |__________________________________|
[INFO] [stdout]     | |__________________________________this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     |                                    `#10` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 253 |                           let _ = events
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout]     | |_________________________________|
[INFO] [stdout] 254 | |                             .send(EstablishedConnectionEvent::Closed {
[INFO] [stdout] 255 | |                                 id: connection_id,
[INFO] [stdout] 256 | |                                 peer_id,
[INFO] [stdout] 257 | |                                 error: Some(error),
[INFO] [stdout] 258 | |                             })
[INFO] [stdout] 259 | |                             .await;
[INFO] [stdout]     | |                                  -
[INFO] [stdout]     | |__________________________________|
[INFO] [stdout]     | |__________________________________this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     |                                    `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 265 | |     }
[INFO] [stdout]     | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> swarm/src/connection/pool.rs:775:26
[INFO] [stdout]     |
[INFO] [stdout] 621 |             if let Poll::Ready(Some(result)) =
[INFO] [stdout]     |                                     ------
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     `result` calls a custom destructor
[INFO] [stdout]     |                                     `result` will be dropped later as of Edition 2024
[INFO] [stdout] 622 |                 self.new_connection_dropped_listeners.poll_next_unpin(cx)
[INFO] [stdout]     |                 ---------------------------------------------------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 632 |             let event = match self.pending_connection_events_rx.poll_next_unpin(cx) {
[INFO] [stdout]     |                 -----         -----------------------------------------------------
[INFO] [stdout]     |                 |             |
[INFO] [stdout]     |                 |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                 |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 `event` calls a custom destructor
[INFO] [stdout]     |                 `event` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 775 |                     }) = self.pending.remove(&id)
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                          up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 809 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]     |
[INFO] [stdout] 387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `event` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> swarm/src/connection.rs:415:23
[INFO] [stdout]      |
[INFO] [stdout]  275 |             match requested_substreams.poll_next_unpin(cx) {
[INFO] [stdout]      |                   ----------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  290 |             match handler.poll(cx) {
[INFO] [stdout]      |                   ----------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  294 |                     let (upgrade, user_data) = protocol.into_upgrade();
[INFO] [stdout]      |                                                -----------------------
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  330 |             match negotiating_out.poll_next_unpin(cx) {
[INFO] [stdout]      |                   -----------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  348 |             match negotiating_in.poll_next_unpin(cx) {
[INFO] [stdout]      |                   ----------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                   `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  385 |                     compute_new_shutdown(handler.connection_keep_alive(), shutdown, *idle_timeout)
[INFO] [stdout]      |                     ------------------------------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                     `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  415 |                 match muxing.poll_outbound_unpin(cx)? {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                       up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                       up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  418 |                         let (user_data, timeout, upgrade) = requested_substream.extract();
[INFO] [stdout]      |                                                             -----------------------------
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                             `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  434 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  457 |                 handler.listen_protocol().upgrade().protocol_info(),
[INFO] [stdout]      |                 -------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                 `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  462 |                 for change in changes {
[INFO] [stdout]      |                               -------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `iter` calls a custom destructor
[INFO] [stdout]      |                               `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]      |
[INFO] [stdout]  132 | impl Drop for Delay {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2255:1
[INFO] [stdout]      |
[INFO] [stdout] 2255 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> swarm/src/connection.rs:437:23
[INFO] [stdout]      |
[INFO] [stdout]  275 |             match requested_substreams.poll_next_unpin(cx) {
[INFO] [stdout]      |                   ----------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  290 |             match handler.poll(cx) {
[INFO] [stdout]      |                   ----------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  294 |                     let (upgrade, user_data) = protocol.into_upgrade();
[INFO] [stdout]      |                                                -----------------------
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  330 |             match negotiating_out.poll_next_unpin(cx) {
[INFO] [stdout]      |                   -----------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  348 |             match negotiating_in.poll_next_unpin(cx) {
[INFO] [stdout]      |                   ----------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                   `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  385 |                     compute_new_shutdown(handler.connection_keep_alive(), shutdown, *idle_timeout)
[INFO] [stdout]      |                     ------------------------------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                     `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  418 |                         let (user_data, timeout, upgrade) = requested_substream.extract();
[INFO] [stdout]      |                                                             -----------------------------
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                             `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  437 |                 match muxing.poll_inbound_unpin(cx)? {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                       up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                       up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  453 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  457 |                 handler.listen_protocol().upgrade().protocol_info(),
[INFO] [stdout]      |                 -------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                 `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  462 |                 for change in changes {
[INFO] [stdout]      |                               -------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `iter` calls a custom destructor
[INFO] [stdout]      |                               `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#10` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]      |
[INFO] [stdout]  132 | impl Drop for Delay {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2255:1
[INFO] [stdout]      |
[INFO] [stdout] 2255 | impl<A: Array> Drop for IntoIter<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> swarm/src/lib.rs:1222:31
[INFO] [stdout]      |
[INFO] [stdout] 1202 |             if let Some(swarm_event) = this.pending_swarm_events.pop_front() {
[INFO] [stdout]      |                                        -------------------------------------
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1206 |             match this.pending_handler_event.take() {
[INFO] [stdout]      |                   ---------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1209 |                 Some((peer_id, handler, event)) => match handler {
[INFO] [stdout]      |                                -------  -----
[INFO] [stdout]      |                                |        |
[INFO] [stdout]      |                                |        `event` calls a custom destructor
[INFO] [stdout]      |                                |        `event` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `handler` calls a custom destructor
[INFO] [stdout]      |                                `handler` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1212 |                             Some(conn) => match notify_one(conn, event, cx) {
[INFO] [stdout]      |                                                 ---------------------------
[INFO] [stdout]      |                                                 |
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1222 |                         match notify_any::<_, TBehaviour>(ids, &mut this.pool, event, cx) {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                               up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1229 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 1232 |                 None => match this.behaviour.poll(cx) {
[INFO] [stdout]      |                               -----------------------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                               `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1243 |             match this.pool.poll(cx) {
[INFO] [stdout]      |                   ------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                   `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1252 |             match Transport::poll(Pin::new(&mut this.transport), cx) {
[INFO] [stdout]      |                   --------------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `handler` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> swarm/src/connection/pool.rs:849:1
[INFO] [stdout]      |
[INFO] [stdout]  849 | impl Drop for NewConnection {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-identify v0.47.0 (/opt/rustwide/workdir/protocols/identify)
[INFO] [stderr]     Checking libp2p-request-response v0.29.0 (/opt/rustwide/workdir/protocols/request-response)
[INFO] [stderr]    Migrating transports/tls/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-ping v0.47.0 (/opt/rustwide/workdir/protocols/ping)
[INFO] [stderr]     Checking libp2p-kad v0.49.0 (/opt/rustwide/workdir/protocols/kad)
[INFO] [stderr]    Migrating transports/websocket/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-relay v0.21.1 (/opt/rustwide/workdir/protocols/relay)
[INFO] [stderr]        Fixed transports/websocket/src/lib.rs (1 fix)
[INFO] [stderr]        Fixed transports/websocket/src/quicksink.rs (2 fixes)
[INFO] [stderr]    Migrating transports/plaintext/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-dcutr v0.14.0 (/opt/rustwide/workdir/protocols/dcutr)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/websocket/src/framed.rs:343:14
[INFO] [stdout]      |
[INFO] [stdout]  338 |         let mut client = handshake::Client::new(stream, &addr.host_port, addr.path.as_ref());
[INFO] [stdout]      |             ----------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `client` calls a custom destructor
[INFO] [stdout]      |             `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  343 |             .await?
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout]      |              |
[INFO] [stdout]      |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  365 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.26/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/framed.rs:172:19
[INFO] [stdout]     |
[INFO] [stdout] 171 |             let mut transport = self.transport.lock();
[INFO] [stdout]     |                 -------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `transport` calls a custom destructor
[INFO] [stdout]     |                 `transport` will be dropped later as of Edition 2024
[INFO] [stdout] 172 |             match Transport::poll(Pin::new(transport.deref_mut()), cx) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |         };
[INFO] [stdout]     |          - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `transport` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.12/src/mutex.rs:666:1
[INFO] [stdout]     |
[INFO] [stdout] 666 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/framed.rs:278:23
[INFO] [stdout]     |
[INFO] [stdout] 278 |                 match Self::dial_once(transport.clone(), addr, tls_config.clone(), dial_opts).await
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |                                                                       |
[INFO] [stdout]     |                       |                                                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                       |                                                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |                                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |                                                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 291 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/quicksink.rs:180:27
[INFO] [stdout]     |
[INFO] [stdout] 180 |                     match this.param.take() { Some(p) => {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 187 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 188 |                 State::Sending => match ready!(this.future.as_mut().as_pin_mut().unwrap().poll(cx))
[INFO] [stdout]     |                                         -----------------------------------------------------------
[INFO] [stdout]     |                                         |      |
[INFO] [stdout]     |                                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/quicksink.rs:239:27
[INFO] [stdout]     |
[INFO] [stdout] 239 |                     match this.param.take() { Some(p) => {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 247 |                 State::Sending => match ready!(this.future.as_mut().as_pin_mut().unwrap().poll(cx))
[INFO] [stdout]     |                                         -----------------------------------------------------------
[INFO] [stdout]     |                                         |      |
[INFO] [stdout]     |                                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-gossipsub v0.50.0 (/opt/rustwide/workdir/protocols/gossipsub)
[INFO] [stderr]    Migrating muxers/mplex/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-quic v0.13.0 (/opt/rustwide/workdir/transports/quic)
[INFO] [stderr]     Checking libp2p-mdns v0.48.0 (/opt/rustwide/workdir/protocols/mdns)
[INFO] [stderr]    Migrating muxers/test-harness/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> muxers/mplex/src/io.rs:480:19
[INFO] [stdout]     |
[INFO] [stdout] 480 |             match ready!(self.poll_read_frame(cx, Some(id)))? {
[INFO] [stdout]     |                   ^^^^^^^----------------------------------^^
[INFO] [stdout]     |                   |      |
[INFO] [stdout]     |                   |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                   |      up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 491 |                 frame @ Frame::Open { .. } => {
[INFO] [stdout]     |                 -----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `frame` calls a custom destructor
[INFO] [stdout]     |                 `frame` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 518 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `frame` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed muxers/mplex/src/io.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> muxers/mplex/src/io.rs:864:33
[INFO] [stdout]     |
[INFO] [stdout] 864 |         while let Some(frame) = self.pending_frames.pop_back() {
[INFO] [stdout]     |                        -----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                        |        |
[INFO] [stdout]     |                        |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        `frame` calls a custom destructor
[INFO] [stdout]     |                        `frame` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 869 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `frame` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-allow-block-list v0.6.0 (/opt/rustwide/workdir/misc/allow-block-list)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> muxers/test-harness/src/lib.rs:227:19
[INFO] [stdout]     |
[INFO] [stdout] 227 |             match mem::replace(this, Self::Poisoned) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                   up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 228 |                 Harness::InboundSetup { muxer, proto_fn } => {
[INFO] [stdout] 229 |                     if let Poll::Ready(stream) = muxer.poll_inbound_unpin(cx) {
[INFO] [stdout]     |                                                  ----------------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 238 |                     if let Poll::Ready(event) = muxer.poll_unpin(cx) {
[INFO] [stdout]     |                                                 --------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 249 |                     if let Poll::Ready(stream) = muxer.poll_outbound_unpin(cx) {
[INFO] [stdout]     |                                                  -----------------------------
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                                  `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 258 |                     if let Poll::Ready(event) = muxer.poll_unpin(cx) {
[INFO] [stdout]     |                                                 --------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 270 |                     mut proto,
[INFO] [stdout]     |                     ---------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `proto` calls a custom destructor
[INFO] [stdout]     |                     `proto` will be dropped later as of Edition 2024
[INFO] [stdout] 271 |                     mut timeout,
[INFO] [stdout]     |                     -----------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `timeout` calls a custom destructor
[INFO] [stdout]     |                     `timeout` will be dropped later as of Edition 2024
[INFO] [stdout] 272 |                 } => {
[INFO] [stdout] 273 |                     if let Poll::Ready(event) = muxer.poll_unpin(cx) {
[INFO] [stdout]     |                                                 --------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                                 `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 301 |                     if let Poll::Ready(event) = muxer.poll_unpin(cx) {
[INFO] [stdout]     |                                                 --------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                                                 `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 315 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | impl Drop for Delay {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `proto` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `timeout` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | impl Drop for Delay {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-upnp v0.6.0 (/opt/rustwide/workdir/protocols/upnp)
[INFO] [stderr]    Migrating transports/uds/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-connection-limits v0.6.0 (/opt/rustwide/workdir/misc/connection-limits)
[INFO] [stderr]    Migrating transports/dns/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-swarm-test v0.6.0 (/opt/rustwide/workdir/swarm-test)
[INFO] [stderr]        Fixed transports/dns/src/lib.rs (4 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/dns/src/lib.rs:250:27
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     match resolve(&name, &resolver).await {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                           |                         |
[INFO] [stdout]     |                           |                         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                           |                         up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           `__awaitee` calls a custom destructor
[INFO] [stdout]     |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 290 |                 } else {
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 294 |                     let transport = inner.clone();
[INFO] [stdout]     |                         ---------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `transport` calls a custom destructor
[INFO] [stdout]     |                         `transport` will be dropped later as of Edition 2024
[INFO] [stdout] 295 |                     let dial = transport.lock().dial(addr, dial_opts);
[INFO] [stdout]     |                         ----   ----------------
[INFO] [stdout]     |                         |      |
[INFO] [stdout]     |                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `dial` calls a custom destructor
[INFO] [stdout]     |                         `dial` will be dropped later as of Edition 2024
[INFO] [stdout] 296 |                     let result = match dial {
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `result` calls a custom destructor
[INFO] [stdout]     |                         `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 302 |                             out.await.map_err(Error::Transport)
[INFO] [stdout]     |                             ---------
[INFO] [stdout]     |                             |   |
[INFO] [stdout]     |                             |   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             |   `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.12/src/mutex.rs:666:1
[INFO] [stdout]     |
[INFO] [stdout] 666 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/dns/src/lib.rs:302:33
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     match resolve(&name, &resolver).await {
[INFO] [stdout]     |                           -------------------------------
[INFO] [stdout]     |                           |                         |
[INFO] [stdout]     |                           |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                           `__awaitee` calls a custom destructor
[INFO] [stdout]     |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 294 |                     let transport = inner.clone();
[INFO] [stdout]     |                         ---------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `transport` calls a custom destructor
[INFO] [stdout]     |                         `transport` will be dropped later as of Edition 2024
[INFO] [stdout] 295 |                     let dial = transport.lock().dial(addr, dial_opts);
[INFO] [stdout]     |                         ----   ----------------
[INFO] [stdout]     |                         |      |
[INFO] [stdout]     |                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `dial` calls a custom destructor
[INFO] [stdout]     |                         `dial` will be dropped later as of Edition 2024
[INFO] [stdout] 296 |                     let result = match dial {
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `result` calls a custom destructor
[INFO] [stdout]     |                         `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 302 |                             out.await.map_err(Error::Transport)
[INFO] [stdout]     |                             ----^^^^^
[INFO] [stdout]     |                             |   |
[INFO] [stdout]     |                             |   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             |   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             |   `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 303 |                         }
[INFO] [stdout]     |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.12/src/mutex.rs:666:1
[INFO] [stdout]     |
[INFO] [stdout] 666 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-webrtc-utils v0.4.0 (/opt/rustwide/workdir/misc/webrtc-utils)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/dns/src/lib.rs:250:27
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     match resolve(&name, &resolver).await {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                           |                         |
[INFO] [stdout]     |                           |                         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                           |                         up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                           `__awaitee` calls a custom destructor
[INFO] [stdout]     |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 290 |                 } else {
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 294 |                     let transport = inner.clone();
[INFO] [stdout]     |                         ---------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `transport` calls a custom destructor
[INFO] [stdout]     |                         `transport` will be dropped later as of Edition 2024
[INFO] [stdout] 295 |                     let dial = transport.lock().dial(addr, dial_opts);
[INFO] [stdout]     |                         ----   ----------------
[INFO] [stdout]     |                         |      |
[INFO] [stdout]     |                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `dial` calls a custom destructor
[INFO] [stdout]     |                         `dial` will be dropped later as of Edition 2024
[INFO] [stdout] 296 |                     let result = match dial {
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `result` calls a custom destructor
[INFO] [stdout]     |                         `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 302 |                             out.await.map_err(Error::Transport)
[INFO] [stdout]     |                             ---------
[INFO] [stdout]     |                             |   |
[INFO] [stdout]     |                             |   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             |   `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#6` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.12/src/mutex.rs:666:1
[INFO] [stdout]     |
[INFO] [stdout] 666 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/dns/src/lib.rs:302:33
[INFO] [stdout]     |
[INFO] [stdout] 250 |                     match resolve(&name, &resolver).await {
[INFO] [stdout]     |                           -------------------------------
[INFO] [stdout]     |                           |                         |
[INFO] [stdout]     |                           |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                           `__awaitee` calls a custom destructor
[INFO] [stdout]     |                           `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 294 |                     let transport = inner.clone();
[INFO] [stdout]     |                         ---------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `transport` calls a custom destructor
[INFO] [stdout]     |                         `transport` will be dropped later as of Edition 2024
[INFO] [stdout] 295 |                     let dial = transport.lock().dial(addr, dial_opts);
[INFO] [stdout]     |                         ----   ----------------
[INFO] [stdout]     |                         |      |
[INFO] [stdout]     |                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `dial` calls a custom destructor
[INFO] [stdout]     |                         `dial` will be dropped later as of Edition 2024
[INFO] [stdout] 296 |                     let result = match dial {
[INFO] [stdout]     |                         ------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `result` calls a custom destructor
[INFO] [stdout]     |                         `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 302 |                             out.await.map_err(Error::Transport)
[INFO] [stdout]     |                             ----^^^^^
[INFO] [stdout]     |                             |   |
[INFO] [stdout]     |                             |   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             |   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             |   `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 303 |                         }
[INFO] [stdout]     |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.12/src/mutex.rs:666:1
[INFO] [stdout]     |
[INFO] [stdout] 666 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking thirtyfour v0.32.0
[INFO] [stderr]        Fixed transports/tcp/src/lib.rs (3 fixes)
[INFO] [stderr]    Migrating protocols/identify/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/tcp/src/lib.rs:767:23
[INFO] [stdout]     |
[INFO] [stdout] 767 |                 match tcp.select_next_some().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |                      |
[INFO] [stdout]     |                       |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 772 |                         let mut upgrade = upgrade.await.unwrap();
[INFO] [stdout]     |                             -----------   -------------
[INFO] [stdout]     |                             |             |       |
[INFO] [stdout]     |                             |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                             |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             |             `__awaitee` calls a custom destructor
[INFO] [stdout]     |                             |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             `upgrade` calls a custom destructor
[INFO] [stdout]     |                             `upgrade` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 781 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/tcp/src/lib.rs:836:23
[INFO] [stdout]     |
[INFO] [stdout] 836 |                 match tcp.select_next_some().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |                      |
[INFO] [stdout]     |                       |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 856 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/tcp/src/lib.rs:906:23
[INFO] [stdout]     |
[INFO] [stdout] 906 |                 match tcp.select_next_some().await {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |                      |
[INFO] [stdout]     |                       |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                       up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 911 |                         upgrade,
[INFO] [stdout]     |                         -------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `upgrade` calls a custom destructor
[INFO] [stdout]     |                         `upgrade` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 916 |                         let remote_port_reuse = port_reuse_rx.await.unwrap();
[INFO] [stdout]     |                                                 -------------------
[INFO] [stdout]     |                                                 |
[INFO] [stdout]     |                                                 `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 920 |                         let mut upgrade = upgrade.await.unwrap();
[INFO] [stdout]     |                             -----------   -------------
[INFO] [stdout]     |                             |             |       |
[INFO] [stdout]     |                             |             |       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             |             |       `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             |             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                             |             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 929 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `upgrade` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:478:1
[INFO] [stdout]     |
[INFO] [stdout] 478 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/tcp/src/lib.rs:940:19
[INFO] [stdout]     |
[INFO] [stdout] 938 |             let mut tcp = Transport::<T>::new(Config::new());
[INFO] [stdout]     |                 -------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `tcp` calls a custom destructor
[INFO] [stdout]     |                 `tcp` will be dropped later as of Edition 2024
[INFO] [stdout] 939 |             tcp.listen_on(ListenerId::next(), addr).unwrap();
[INFO] [stdout] 940 |             match poll_fn(|cx| libp2p_core::Transport::poll(Pin::new(&mut tcp), cx)).await {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 976 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `tcp` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]     |
[INFO] [stdout] 575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/tcp/src/lib.rs:1006:19
[INFO] [stdout]      |
[INFO] [stdout] 1004 |             let mut tcp = Transport::<T>::new(Config::new());
[INFO] [stdout]      |                 -------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `tcp` calls a custom destructor
[INFO] [stdout]      |                 `tcp` will be dropped later as of Edition 2024
[INFO] [stdout] 1005 |             tcp.listen_on(ListenerId::next(), addr).unwrap();
[INFO] [stdout] 1006 |             match poll_fn(|cx| libp2p_core::Transport::poll(Pin::new(&mut tcp), cx)).await {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1030 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `tcp` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/tcp/src/lib.rs:418:15
[INFO] [stdout]      |
[INFO] [stdout]  408 |     #[tracing::instrument(level = "trace", name = "Transport::poll", skip(self, cx))]
[INFO] [stdout]      |     ---------------------------------------------------------------------------------
[INFO] [stdout]      |     |                                                                               |
[INFO] [stdout]      |     |                                                                               now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |     `__tracing_attr_span` calls a custom destructor
[INFO] [stdout]      |     `__tracing_attr_span` will be dropped later as of Edition 2024
[INFO] [stdout]      |     `__tracing_attr_guard` calls a custom destructor
[INFO] [stdout]      |     `__tracing_attr_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  418 |         match self.listeners.poll_next_unpin(cx) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `__tracing_attr_span` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:1449:1
[INFO] [stdout]      |
[INFO] [stdout] 1449 | impl Drop for Span {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__tracing_attr_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:1559:1
[INFO] [stdout]      |
[INFO] [stdout] 1559 | impl<'a> Drop for Entered<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking tonic v0.12.3
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/identify/src/handler.rs:359:40
[INFO] [stdout]     |
[INFO] [stdout] 359 |         while let Poll::Ready(ready) = self.active_streams.poll_unpin(cx) {
[INFO] [stdout]     |                               -----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                               |        |
[INFO] [stdout]     |                               |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               `ready` calls a custom destructor
[INFO] [stdout]     |                               `ready` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 414 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `ready` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/request-response/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking libp2p-stream v0.4.0-alpha (/opt/rustwide/workdir/protocols/stream)
[INFO] [stderr]     Checking libp2p-webtransport-websys v0.5.1 (/opt/rustwide/workdir/transports/webtransport-websys)
[INFO] [stderr]        Fixed protocols/request-response/src/lib.rs (1 fix)
[INFO] [stderr]    Migrating protocols/ping/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed protocols/request-response/src/handler.rs (2 fixes)
[INFO] [stderr]     Checking libp2p-autonat v0.15.0 (/opt/rustwide/workdir/protocols/autonat)
[INFO] [stderr]     Checking libp2p-rendezvous v0.17.0 (/opt/rustwide/workdir/protocols/rendezvous)
[INFO] [stderr]        Fixed protocols/ping/src/lib.rs (1 fix)
[INFO] [stderr]        Fixed protocols/ping/src/protocol.rs (1 fix)
[INFO] [stderr]    Migrating protocols/kad/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking opentelemetry-proto v0.27.0
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/ping/src/handler.rs:386:11
[INFO] [stdout]      |
[INFO] [stdout]  384 |     futures::pin_mut!(ping);
[INFO] [stdout]      |     -----------------------
[INFO] [stdout]      |     |
[INFO] [stdout]      |     `ping` calls a custom destructor
[INFO] [stdout]      |     `ping` will be dropped later as of Edition 2024
[INFO] [stdout]  385 |
[INFO] [stdout]  386 |     match future::select(ping, Delay::new(timeout)).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                                         |
[INFO] [stdout]      |           |                                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                                         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  391 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/ping/src/handler.rs:386:53
[INFO] [stdout]     |
[INFO] [stdout] 384 |     futures::pin_mut!(ping);
[INFO] [stdout]     |     -----------------------
[INFO] [stdout]     |     |
[INFO] [stdout]     |     `ping` calls a custom destructor
[INFO] [stdout]     |     `ping` will be dropped later as of Edition 2024
[INFO] [stdout] 385 |
[INFO] [stdout] 386 |     match future::select(ping, Delay::new(timeout)).await {
[INFO] [stdout]     |                                                     ^^^^^
[INFO] [stdout]     |                                                     |
[INFO] [stdout]     |                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 391 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/ping/src/handler.rs:290:19
[INFO] [stdout]      |
[INFO] [stdout]  274 |             if let Some(error) = self.pending_errors.pop_back() {
[INFO] [stdout]      |                         -----    ------------------------------
[INFO] [stdout]      |                         |        |
[INFO] [stdout]      |                         |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `error` calls a custom destructor
[INFO] [stdout]      |                         `error` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  290 |             match self.outbound.take() {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  291 |                 Some(OutboundState::Ping(mut ping)) => match ping.poll_unpin(cx) {
[INFO] [stdout]      |                                          --------            -------------------
[INFO] [stdout]      |                                          |                   |
[INFO] [stdout]      |                                          |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                          |                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                          `ping` calls a custom destructor
[INFO] [stdout]      |                                          `ping` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  334 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `ping` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/ping/src/lib.rs:152:15
[INFO] [stdout]      |
[INFO] [stdout]  150 |     #[tracing::instrument(level = "trace", name = "NetworkBehaviour::poll", skip(self))]
[INFO] [stdout]      |     ------------------------------------------------------------------------------------
[INFO] [stdout]      |     |                                                                                  |
[INFO] [stdout]      |     |                                                                                  now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |     `__tracing_attr_span` calls a custom destructor
[INFO] [stdout]      |     `__tracing_attr_span` will be dropped later as of Edition 2024
[INFO] [stdout]      |     `__tracing_attr_guard` calls a custom destructor
[INFO] [stdout]      |     `__tracing_attr_guard` will be dropped later as of Edition 2024
[INFO] [stdout]  151 |     fn poll(&mut self, _: &mut Context<'_>) -> Poll<ToSwarm<Self::ToSwarm, THandlerInEvent<Self>>> {
[INFO] [stdout]  152 |         match self.events.pop_back() { Some(e) => {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `__tracing_attr_span` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:1449:1
[INFO] [stdout]      |
[INFO] [stdout] 1449 | impl Drop for Span {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__tracing_attr_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/span.rs:1559:1
[INFO] [stdout]      |
[INFO] [stdout] 1559 | impl<'a> Drop for Entered<'a> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking opentelemetry-otlp v0.27.0
[INFO] [stderr]     Checking libp2p-memory-connection-limits v0.5.0 (/opt/rustwide/workdir/misc/memory-connection-limits)
[INFO] [stderr]        Fixed protocols/kad/src/kbucket.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2559:23
[INFO] [stdout]      |
[INFO] [stdout] 2559 |                 match job.poll(cx, &mut self.store, now) { Poll::Ready(r) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^               -
[INFO] [stdout]      |                       |                                                |
[INFO] [stdout]      |                       |                                                `r` calls a custom destructor
[INFO] [stdout]      |                       |                                                `r` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2565 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2626:23
[INFO] [stdout]      |
[INFO] [stdout] 2597 |             if let Some(event) = self.queued_events.pop_front() {
[INFO] [stdout]      |                                  ------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2602 |             if let Some(entry) = self.kbuckets.take_applied_pending() {
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2626 |                 match self.queries.poll(now) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2667 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/relay/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2628:46
[INFO] [stdout]      |
[INFO] [stdout] 2597 |             if let Some(event) = self.queued_events.pop_front() {
[INFO] [stdout]      |                                  ------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2602 |             if let Some(entry) = self.kbuckets.take_applied_pending() {
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2628 |                         if let Some(event) = self.query_finished(q) {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2631 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed protocols/kad/src/query/peers/closest.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2633:46
[INFO] [stdout]      |
[INFO] [stdout] 2597 |             if let Some(event) = self.queued_events.pop_front() {
[INFO] [stdout]      |                                  ------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2602 |             if let Some(entry) = self.kbuckets.take_applied_pending() {
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2633 |                         if let Some(event) = self.query_timeout(q) {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2636 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 2637 |                     QueryPoolState::Waiting(Some((query, peer_id))) => {
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed protocols/kad/src/record/store/memory.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2626:23
[INFO] [stdout]      |
[INFO] [stdout] 2626 |                 match self.queries.poll(now) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2667 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed protocols/kad/src/behaviour.rs (4 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/handler.rs:871:19
[INFO] [stdout]      |
[INFO] [stdout]  871 |               match std::mem::replace(
[INFO] [stdout]      |  ___________________^
[INFO] [stdout]  872 | |                 this,
[INFO] [stdout]  873 | |                 Self::Poisoned {
[INFO] [stdout]  874 | |                     phantom: PhantomData,
[INFO] [stdout]  875 | |                 },
[INFO] [stdout]  876 | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  880 |                       mut substream,
[INFO] [stdout]      |                       -------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `substream` calls a custom destructor
[INFO] [stdout]      |                       `substream` will be dropped later as of Edition 2024
[INFO] [stdout]  881 |                   } => match substream.poll_next_unpin(cx) {
[INFO] [stdout]      |                              -----------------------------
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  970 |                   InboundSubstreamState::PendingSend(id, mut substream, msg) => {
[INFO] [stdout]      |                                                          -------------  ---
[INFO] [stdout]      |                                                          |              |
[INFO] [stdout]      |                                                          |              `msg` calls a custom destructor
[INFO] [stdout]      |                                                          |              `msg` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                                          `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  985 |                   InboundSubstreamState::PendingFlush(id, mut substream) => {
[INFO] [stdout]      |                                                           -------------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1001 |                   InboundSubstreamState::Closing(mut stream) => match stream.poll_close_unpin(cx) {
[INFO] [stdout]      |                                                  ----------
[INFO] [stdout]      |                                                  |
[INFO] [stdout]      |                                                  `stream` calls a custom destructor
[INFO] [stdout]      |                                                  `stream` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1011 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `substream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `substream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `stream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed protocols/kad/src/behaviour/test.rs (5 fixes)
[INFO] [stderr]    Migrating protocols/dcutr/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/gossipsub/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed protocols/gossipsub/src/behaviour.rs (2 fixes)
[INFO] [stderr]    Migrating transports/quic/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed protocols/gossipsub/src/metrics.rs (2 fixes)
[INFO] [stderr]        Fixed protocols/gossipsub/src/rpc_proto.rs (12 fixes)
[INFO] [stderr]        Fixed protocols/gossipsub/src/time_cache.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/gossipsub/src/handler.rs:249:19
[INFO] [stdout]      |
[INFO] [stdout]  249 |               match self
[INFO] [stdout]      |  ___________________^
[INFO] [stdout]  250 | |                 .outbound_substream
[INFO] [stdout]  251 | |                 .replace(OutboundSubstreamState::Poisoned)
[INFO] [stdout]      | |                                                          ^
[INFO] [stdout]      | |                                                          |
[INFO] [stdout]      | |__________________________________________________________this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                            up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  255 |                       if let Poll::Ready(mut message) = Pin::new(&mut self.message_queue).poll_pop(cx)
[INFO] [stdout]      |                                                         ----------------------------------------------
[INFO] [stdout]      |                                                         |
[INFO] [stdout]      |                                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  290 |                   Some(OutboundSubstreamState::PendingSend(mut substream, message)) => {
[INFO] [stdout]      |                                                            -------------
[INFO] [stdout]      |                                                            |
[INFO] [stdout]      |                                                            `substream` calls a custom destructor
[INFO] [stdout]      |                                                            `substream` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  319 |                   Some(OutboundSubstreamState::PendingFlush(mut substream)) => {
[INFO] [stdout]      |                                                             -------------
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  346 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]      |
[INFO] [stdout]  132 | impl Drop for Delay {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `substream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `substream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/gossipsub/src/handler.rs:350:19
[INFO] [stdout]      |
[INFO] [stdout]  350 |               match self
[INFO] [stdout]      |  ___________________^
[INFO] [stdout]  351 | |                 .inbound_substream
[INFO] [stdout]  352 | |                 .replace(InboundSubstreamState::Poisoned)
[INFO] [stdout]      | |                                                         ^
[INFO] [stdout]      | |                                                         |
[INFO] [stdout]      | |_________________________________________________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  384 |                   Some(InboundSubstreamState::Closing(mut substream)) => {
[INFO] [stdout]      |                                                       -------------
[INFO] [stdout]      |                                                       |
[INFO] [stdout]      |                                                       `substream` calls a custom destructor
[INFO] [stdout]      |                                                       `substream` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  411 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `substream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `substream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-metrics v0.17.1 (/opt/rustwide/workdir/misc/metrics)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/gossipsub/src/queue.rs:222:15
[INFO] [stdout]     |
[INFO] [stdout] 221 |         let mut guard = self.inner.lock().expect("lock to not be poisoned");
[INFO] [stdout]     |             ---------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `guard` calls a custom destructor
[INFO] [stdout]     |             `guard` will be dropped later as of Edition 2024
[INFO] [stdout] 222 |         match guard.queue.pop_front() {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |               |
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 232 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | impl Drop for Delay {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `guard` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/gossipsub/src/time_cache.rs:130:38
[INFO] [stdout]     |
[INFO] [stdout] 125 |         while let Some(element) = self.list.pop_front() {
[INFO] [stdout]     |                        -------
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `element` calls a custom destructor
[INFO] [stdout]     |                        `element` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 130 |             if let Occupied(entry) = self.map.entry(element.element.clone()) {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 131 |                 if entry.get().expires <= now {
[INFO] [stdout] 132 |                     entry.remove();
[INFO] [stdout]     |                     --------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 135 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/gossipsub/src/time_cache.rs:125:35
[INFO] [stdout]     |
[INFO] [stdout] 125 |         while let Some(element) = self.list.pop_front() {
[INFO] [stdout]     |                        -------    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                        |          |
[INFO] [stdout]     |                        |          this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                        |          up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        `element` calls a custom destructor
[INFO] [stdout]     |                        `element` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 132 |                     entry.remove();
[INFO] [stdout]     |                     --------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 135 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/mdns/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/quic/src/hole_punching.rs:19:11
[INFO] [stdout]     |
[INFO] [stdout]  18 |     futures::pin_mut!(punch_holes_future);
[INFO] [stdout]     |     -------------------------------------
[INFO] [stdout]     |     |
[INFO] [stdout]     |     `punch_holes_future` calls a custom destructor
[INFO] [stdout]     |     `punch_holes_future` will be dropped later as of Edition 2024
[INFO] [stdout]  19 |     match futures::future::select(P::sleep(timeout_duration), punch_holes_future).await {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                                                                       |
[INFO] [stdout]     |           |                                                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                                                                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  24 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> transports/quic/src/hole_punching.rs:19:83
[INFO] [stdout]    |
[INFO] [stdout] 18 |     futures::pin_mut!(punch_holes_future);
[INFO] [stdout]    |     -------------------------------------
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `punch_holes_future` calls a custom destructor
[INFO] [stdout]    |     `punch_holes_future` will be dropped later as of Edition 2024
[INFO] [stdout] 19 |     match futures::future::select(P::sleep(timeout_duration), punch_holes_future).await {
[INFO] [stdout]    |                                                                                   ^^^^^
[INFO] [stdout]    |                                                                                   |
[INFO] [stdout]    |                                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]    |                                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 24 | }
[INFO] [stdout]    | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]    = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/quic/src/transport.rs:346:27
[INFO] [stdout]      |
[INFO] [stdout]  345 |                     futures::pin_mut!(hole_puncher);
[INFO] [stdout]      |                     -------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `hole_puncher` calls a custom destructor
[INFO] [stdout]      |                     `hole_puncher` will be dropped later as of Edition 2024
[INFO] [stdout]  346 |                     match futures::future::select(receiver, hole_puncher).await {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                           |                                               |
[INFO] [stdout]      |                           |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           |                                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  365 |                 }))
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/quic/src/transport.rs:346:75
[INFO] [stdout]     |
[INFO] [stdout] 345 |                     futures::pin_mut!(hole_puncher);
[INFO] [stdout]     |                     -------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `hole_puncher` calls a custom destructor
[INFO] [stdout]     |                     `hole_puncher` will be dropped later as of Edition 2024
[INFO] [stdout] 346 |                     match futures::future::select(receiver, hole_puncher).await {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |                                                                           |
[INFO] [stdout]     |                                                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 365 |                 }))
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/quic/src/transport.rs:388:31
[INFO] [stdout]      |
[INFO] [stdout]  374 |         while let Poll::Ready(Some(ev)) = self.listeners.poll_next_unpin(cx) {
[INFO] [stdout]      |                                    --
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `ev` calls a custom destructor
[INFO] [stdout]      |                                    `ev` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  387 |                     if let Some(sender) = self.hole_punch_attempts.remove(&socket_addr) {
[INFO] [stdout]      |                                           ---------------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  388 |                         match sender.send(upgrade) {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  394 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/quic/src/transport.rs:374:43
[INFO] [stdout]      |
[INFO] [stdout]  374 |         while let Poll::Ready(Some(ev)) = self.listeners.poll_next_unpin(cx) {
[INFO] [stdout]      |                                    --     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                    |      |
[INFO] [stdout]      |                                    |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                    |      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                    `ev` calls a custom destructor
[INFO] [stdout]      |                                    `ev` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  387 |                     if let Some(sender) = self.hole_punch_attempts.remove(&socket_addr) {
[INFO] [stdout]      |                                           ---------------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  405 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed protocols/mdns/src/behaviour/iface/query.rs (1 fix)
[INFO] [stderr]    Migrating misc/allow-block-list/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/upnp/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed protocols/upnp/src/behaviour.rs (2 fixes)
[INFO] [stderr]    Migrating misc/connection-limits/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating swarm-test/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> swarm-test/src/lib.rs:162:33
[INFO] [stdout]     |
[INFO] [stdout] 160 |         match futures::future::select(swarm1.next_swarm_event(), swarm2.next_swarm_event()).await {
[INFO] [stdout]     |               -----------------------------------------------------------------------------------
[INFO] [stdout]     |               |                                                                             |
[INFO] [stdout]     |               |                                                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               |                                                                             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |               `__awaitee` calls a custom destructor
[INFO] [stdout]     |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 161 |             Either::Left((o1, _)) => {
[INFO] [stdout] 162 |                 if let Ok(o1) = o1.try_into_output() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 165 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating misc/webrtc-utils/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> swarm-test/src/lib.rs:167:33
[INFO] [stdout]     |
[INFO] [stdout] 160 |         match futures::future::select(swarm1.next_swarm_event(), swarm2.next_swarm_event()).await {
[INFO] [stdout]     |               -----------------------------------------------------------------------------------
[INFO] [stdout]     |               |                                                                             |
[INFO] [stdout]     |               |                                                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               |                                                                             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |               `__awaitee` calls a custom destructor
[INFO] [stdout]     |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 167 |                 if let Ok(o2) = o2.try_into_output() {
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 170 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> swarm-test/src/lib.rs:160:15
[INFO] [stdout]     |
[INFO] [stdout] 160 |         match futures::future::select(swarm1.next_swarm_event(), swarm2.next_swarm_event()).await {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |               |                                                                             |
[INFO] [stdout]     |               |                                                                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |               |                                                                             up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               |                                                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               |                                                                             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               `__awaitee` calls a custom destructor
[INFO] [stdout]     |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 172 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> swarm-test/src/lib.rs:344:32
[INFO] [stdout]     |
[INFO] [stdout] 344 |             if let Ok(event) = self.next_swarm_event().await.try_into_behaviour_event() {
[INFO] [stdout]     |                                -----------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                |                       |
[INFO] [stdout]     |                                |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 347 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> swarm-test/src/lib.rs:351:33
[INFO] [stdout]     |
[INFO] [stdout] 351 |         while let Some(event) = self.next().await {
[INFO] [stdout]     |                        -----    ^^^^^^^^^^^^-----
[INFO] [stdout]     |                        |        |           |
[INFO] [stdout]     |                        |        |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        |        |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                        |        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        `event` calls a custom destructor
[INFO] [stdout]     |                        `event` will be dropped later as of Edition 2024
[INFO] [stdout] 352 |             tracing::trace!(?event);
[INFO] [stdout] 353 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `event` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/stream/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/webrtc-utils/src/stream/drop_listener.rs:78:19
[INFO] [stdout]      |
[INFO] [stdout]   78 |             match std::mem::replace(state, State::Poisoned) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]   79 |                 State::Idle {
[INFO] [stdout]   80 |                     stream,
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `stream` calls a custom destructor
[INFO] [stdout]      |                     `stream` will be dropped later as of Edition 2024
[INFO] [stdout]   81 |                     mut receiver,
[INFO] [stdout]      |                     ------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `receiver` calls a custom destructor
[INFO] [stdout]      |                     `receiver` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   96 |                 State::SendingReset { mut stream } => match stream.poll_ready_unpin(cx)? {
[INFO] [stdout]      |                                       ----------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  110 |                 State::Flushing { mut stream } => match stream.poll_flush_unpin(cx)? {
[INFO] [stdout]      |                                   ----------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  121 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:478:1
[INFO] [stdout]      |
[INFO] [stdout]  478 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `receiver` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:478:1
[INFO] [stdout]      |
[INFO] [stdout]  478 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-webrtc v0.9.0-alpha.2 (/opt/rustwide/workdir/transports/webrtc)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/stream/src/shared.rs:115:42
[INFO] [stdout]      |
[INFO] [stdout]  115 |           while let Ok(Some(new_stream)) = receiver.try_next() {
[INFO] [stdout]      |                             ----------     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                             |              |
[INFO] [stdout]      |                             |              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             |              up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             `new_stream` calls a custom destructor
[INFO] [stdout]      |                             `new_stream` will be dropped later as of Edition 2024
[INFO] [stdout]  116 |               let _ = new_stream
[INFO] [stdout]      |  _____________________-
[INFO] [stdout]  117 | |                 .sender
[INFO] [stdout]  118 | |                 .send(Err(crate::OpenStreamError::Io(io::Error::new(
[INFO] [stdout]  119 | |                     io::ErrorKind::NotConnected,
[INFO] [stdout]  120 | |                     reason.clone(),
[INFO] [stdout]  121 | |                 ))));
[INFO] [stdout]      | |                    -
[INFO] [stdout]      | |                    |
[INFO] [stdout]      | |____________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  122 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `new_stream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating transports/webtransport-websys/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/autonat/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking webtransport-tests v0.1.0 (/opt/rustwide/workdir/wasm-tests/webtransport-tests)
[INFO] [stderr]        Fixed protocols/autonat/src/v2/server/handler/dial_back.rs (1 fix)
[INFO] [stderr]    Migrating protocols/rendezvous/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed protocols/autonat/src/v2/client/behaviour.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/rendezvous/src/client.rs:251:33
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 if let Err(e) = self.register(ns, rz_node, Some(ttl)) {
[INFO] [stdout]     |                            -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |    |
[INFO] [stdout]     |                            |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                            `e` calls a custom destructor
[INFO] [stdout]     |                            `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 254 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed protocols/rendezvous/src/client.rs (1 fix)
[INFO] [stderr]    Migrating misc/memory-connection-limits/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/websocket/src/framed.rs:343:14
[INFO] [stdout]      |
[INFO] [stdout]  338 |         let mut client = handshake::Client::new(stream, &addr.host_port, addr.path.as_ref());
[INFO] [stdout]      |             ----------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `client` calls a custom destructor
[INFO] [stdout]      |             `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  343 |             .await?
[INFO] [stdout]      |              ^^^^^
[INFO] [stdout]      |              |
[INFO] [stdout]      |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  365 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.26/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/framed.rs:172:19
[INFO] [stdout]     |
[INFO] [stdout] 171 |             let mut transport = self.transport.lock();
[INFO] [stdout]     |                 -------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `transport` calls a custom destructor
[INFO] [stdout]     |                 `transport` will be dropped later as of Edition 2024
[INFO] [stdout] 172 |             match Transport::poll(Pin::new(transport.deref_mut()), cx) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 176 |         };
[INFO] [stdout]     |          - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `transport` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.12/src/mutex.rs:666:1
[INFO] [stdout]     |
[INFO] [stdout] 666 | impl<'a, R: RawMutex + 'a, T: ?Sized + 'a> Drop for MutexGuard<'a, R, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/framed.rs:278:23
[INFO] [stdout]     |
[INFO] [stdout] 278 |                 match Self::dial_once(transport.clone(), addr, tls_config.clone(), dial_opts).await
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                       |                                                                       |
[INFO] [stdout]     |                       |                                                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                       |                                                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |                                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                       |                                                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       `__awaitee` calls a custom destructor
[INFO] [stdout]     |                       `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 291 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/quicksink.rs:180:27
[INFO] [stdout]     |
[INFO] [stdout] 180 |                     match this.param.take() { Some(p) => {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 187 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 188 |                 State::Sending => match ready!(this.future.as_mut().as_pin_mut().unwrap().poll(cx))
[INFO] [stdout]     |                                         -----------------------------------------------------------
[INFO] [stdout]     |                                         |      |
[INFO] [stdout]     |                                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/websocket/src/quicksink.rs:239:27
[INFO] [stdout]     |
[INFO] [stdout] 239 |                     match this.param.take() { Some(p) => {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 246 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 247 |                 State::Sending => match ready!(this.future.as_mut().as_pin_mut().unwrap().poll(cx))
[INFO] [stdout]     |                                         -----------------------------------------------------------
[INFO] [stdout]     |                                         |      |
[INFO] [stdout]     |                                         |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                         |      `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating muxers/yamux/tests/compliance.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/metrics/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating transports/quic/tests/smoke.rs from 2021 edition to 2024
[INFO] [stderr] error: errors present after applying fixes to crate `libp2p_metrics`
[INFO] [stderr]  --> misc/metrics/src/bandwidth.rs
[INFO] [stderr]   = cause: error[E0308]: mismatched types
[INFO] [stderr]               --> misc/metrics/src/bandwidth.rs:108:31
[INFO] [stderr]                |
[INFO] [stderr]             64 | impl<T, M> libp2p_core::Transport for Transport<T>
[INFO] [stderr]                |      - found this type parameter
[INFO] [stderr]            ...
[INFO] [stderr]            108 |         match Transport::poll(this.transport, cx) {
[INFO] [stderr]                |               --------------- ^^^^^^^^^^^^^^ expected `Pin<&mut Transport<_>>`, found `Pin<&mut T>`
[INFO] [stderr]                |               |
[INFO] [stderr]                |               arguments to this function are incorrect
[INFO] [stderr]                |
[INFO] [stderr]                = note: expected struct `Pin<&mut bandwidth::Transport<_>>`
[INFO] [stderr]                           found struct `Pin<&mut T>`
[INFO] [stderr]            note: method defined here
[INFO] [stderr]               --> core/src/transport.rs:173:8
[INFO] [stderr]                |
[INFO] [stderr]            173 |     fn poll(
[INFO] [stderr]                |        ^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> misc/metrics/src/bandwidth.rs:119:30
[INFO] [stderr]                |
[INFO] [stderr]            119 |                       upgrade: upgrade.map_ok(Box::new(|(peer_id, stream_muxer)| {
[INFO] [stderr]                |  ______________________________^
[INFO] [stderr]            120 | |                         (peer_id, Muxer::new(stream_muxer, metrics))
[INFO] [stderr]            121 | |                     })),
[INFO] [stderr]                | |_______________________^ expected `MapOk<..., ...>`, found `MapOk<MapOk<_, Box<...>>, ...>`
[INFO] [stderr]                |
[INFO] [stderr]                = note: expected struct `futures::future::MapOk<<T as libp2p_core::Transport>::ListenerUpgrade, Box<dyn FnOnce((PeerId, M)) -> (PeerId, Muxer<M>) + std::marker::Send>>`
[INFO] [stderr]                           found struct `MapOk<MapOk<_, Box<dyn FnOnce((PeerId, _)) -> ... + Send>>, ...>`
[INFO] [stderr]                = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/libp2p_metrics-7919ea43f7443d46.long-type-1028237159887928967.txt'
[INFO] [stderr]                = note: consider using `--verbose` to print the full type name to the console
[INFO] [stderr]            help: consider constraining the associated type `<T as libp2p_core::Transport>::ListenerUpgrade` to `futures::future::MapOk<_, Box<dyn FnOnce((PeerId, _)) -> (PeerId, Muxer<_>) + std::marker::Send>>`
[INFO] [stderr]                |
[INFO] [stderr]             66 |     T: libp2p_core::Transport<Output = (PeerId, M), ListenerUpgrade = futures::future::MapOk<_, Box<dyn FnOnce((PeerId, _)) -> (PeerId, Muxer<_>) + std::marker::Send>>>,
[INFO] [stderr]                |                                                   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 2 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            For more information about this error, try `rustc --explain E0308`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> misc/metrics/src/bandwidth.rs:108:15
[INFO] [stdout]     |
[INFO] [stdout] 108 |         match this.transport.poll(cx) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.transport, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-prelude-collisions` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> misc/metrics/src/bandwidth.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |         this.inner.poll(cx)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `StreamMuxer::poll(this.inner, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p v0.56.1 (/opt/rustwide/workdir/libp2p)
[INFO] [stderr]        Fixed transports/quic/tests/smoke.rs (3 fixes)
[INFO] [stderr]    Migrating transports/quic/tests/stream_compliance.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/quic/tests/smoke.rs:612:25
[INFO] [stdout]     |
[INFO] [stdout] 612 |                         listener.select_next_some().await
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                         |                           |
[INFO] [stdout]     |                         |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         |                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 613 |                     {
[INFO] [stdout] 614 |                         let (_, connection) = upgrade.await.unwrap();
[INFO] [stdout]     |                                               ----------------------
[INFO] [stdout]     |                                               |       |
[INFO] [stdout]     |                                               |       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                               |       `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                               `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                               `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 618 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: errors present after applying fixes to crate `libp2p_metrics`
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> misc/metrics/src/bandwidth.rs:108:15
[INFO] [stdout]     |
[INFO] [stdout] 108 |         match this.transport.poll(cx) {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `Transport::poll(this.transport, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-prelude-collisions` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]  --> misc/metrics/src/bandwidth.rs
[INFO] [stdout] warning: trait method `poll` will become ambiguous in Rust 2024
[INFO] [stdout]    --> misc/metrics/src/bandwidth.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |         this.inner.poll(cx)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^ help: disambiguate the associated function: `StreamMuxer::poll(this.inner, cx)`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/prelude.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]   = cause: error[E0308]: mismatched types
[INFO] [stderr]               --> misc/metrics/src/bandwidth.rs:108:31
[INFO] [stderr]                |
[INFO] [stderr]             64 | impl<T, M> libp2p_core::Transport for Transport<T>
[INFO] [stderr]                |      - found this type parameter
[INFO] [stderr]            ...
[INFO] [stderr]            108 |         match Transport::poll(this.transport, cx) {
[INFO] [stderr]                |               --------------- ^^^^^^^^^^^^^^ expected `Pin<&mut Transport<_>>`, found `Pin<&mut T>`
[INFO] [stderr]                |               |
[INFO] [stderr]                |               arguments to this function are incorrect
[INFO] [stderr]                |
[INFO] [stderr]                = note: expected struct `Pin<&mut bandwidth::Transport<_>>`
[INFO] [stderr]                           found struct `Pin<&mut T>`
[INFO] [stderr]            note: method defined here
[INFO] [stderr]               --> core/src/transport.rs:173:8
[INFO] [stderr]                |
[INFO] [stderr]            173 |     fn poll(
[INFO] [stderr]                |        ^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error[E0308]: mismatched types
[INFO] [stderr]               --> misc/metrics/src/bandwidth.rs:119:30
[INFO] [stderr]                |
[INFO] [stderr]            119 |                       upgrade: upgrade.map_ok(Box::new(|(peer_id, stream_muxer)| {
[INFO] [stderr]                |  ______________________________^
[INFO] [stderr]            120 | |                         (peer_id, Muxer::new(stream_muxer, metrics))
[INFO] [stderr]            121 | |                     })),
[INFO] [stderr]                | |_______________________^ expected `MapOk<..., ...>`, found `MapOk<MapOk<_, Box<...>>, ...>`
[INFO] [stderr]                |
[INFO] [stderr]                = note: expected struct `futures::future::MapOk<<T as libp2p_core::Transport>::ListenerUpgrade, Box<dyn FnOnce((PeerId, M)) -> (PeerId, Muxer<M>) + std::marker::Send>>`
[INFO] [stderr]                           found struct `MapOk<MapOk<_, Box<dyn FnOnce((PeerId, _)) -> ... + Send>>, ...>`
[INFO] [stderr]                = note: the full name for the type has been written to '/opt/rustwide/target/debug/deps/libp2p_metrics-aaa3252a76a4add2.long-type-2982060261569158316.txt'
[INFO] [stderr]                = note: consider using `--verbose` to print the full type name to the console
[INFO] [stderr]            help: consider constraining the associated type `<T as libp2p_core::Transport>::ListenerUpgrade` to `futures::future::MapOk<_, Box<dyn FnOnce((PeerId, _)) -> (PeerId, Muxer<_>) + std::marker::Send>>`
[INFO] [stderr]                |
[INFO] [stderr]             66 |     T: libp2p_core::Transport<Output = (PeerId, M), ListenerUpgrade = futures::future::MapOk<_, Box<dyn FnOnce((PeerId, _)) -> (PeerId, Muxer<_>) + std::marker::Send>>>,
[INFO] [stderr]                |                                                   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 2 previous errors
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            For more information about this error, try `rustc --explain E0308`.
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]        Fixed transports/quic/src/transport.rs (4 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/quic/src/hole_punching.rs:19:11
[INFO] [stdout]     |
[INFO] [stdout]  18 |     futures::pin_mut!(punch_holes_future);
[INFO] [stdout]     |     -------------------------------------
[INFO] [stdout]     |     |
[INFO] [stdout]     |     `punch_holes_future` calls a custom destructor
[INFO] [stdout]     |     `punch_holes_future` will be dropped later as of Edition 2024
[INFO] [stdout]  19 |     match futures::future::select(P::sleep(timeout_duration), punch_holes_future).await {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |           |                                                                       |
[INFO] [stdout]     |           |                                                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |                                                                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  24 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> transports/quic/src/hole_punching.rs:19:83
[INFO] [stdout]    |
[INFO] [stdout] 18 |     futures::pin_mut!(punch_holes_future);
[INFO] [stdout]    |     -------------------------------------
[INFO] [stdout]    |     |
[INFO] [stdout]    |     `punch_holes_future` calls a custom destructor
[INFO] [stdout]    |     `punch_holes_future` will be dropped later as of Edition 2024
[INFO] [stdout] 19 |     match futures::future::select(P::sleep(timeout_duration), punch_holes_future).await {
[INFO] [stdout]    |                                                                                   ^^^^^
[INFO] [stdout]    |                                                                                   |
[INFO] [stdout]    |                                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]    |                                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 24 | }
[INFO] [stdout]    | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]    = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/quic/src/transport.rs:346:27
[INFO] [stdout]      |
[INFO] [stdout]  345 |                     futures::pin_mut!(hole_puncher);
[INFO] [stdout]      |                     -------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `hole_puncher` calls a custom destructor
[INFO] [stdout]      |                     `hole_puncher` will be dropped later as of Edition 2024
[INFO] [stdout]  346 |                     match futures::future::select(receiver, hole_puncher).await {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                           |                                               |
[INFO] [stdout]      |                           |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           |                                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  365 |                 }))
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/quic/src/transport.rs:346:75
[INFO] [stdout]     |
[INFO] [stdout] 345 |                     futures::pin_mut!(hole_puncher);
[INFO] [stdout]     |                     -------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `hole_puncher` calls a custom destructor
[INFO] [stdout]     |                     `hole_puncher` will be dropped later as of Edition 2024
[INFO] [stdout] 346 |                     match futures::future::select(receiver, hole_puncher).await {
[INFO] [stdout]     |                                                                           ^^^^^
[INFO] [stdout]     |                                                                           |
[INFO] [stdout]     |                                                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 365 |                 }))
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/quic/src/transport.rs:388:31
[INFO] [stdout]      |
[INFO] [stdout]  374 |         while let Poll::Ready(Some(ev)) = self.listeners.poll_next_unpin(cx) {
[INFO] [stdout]      |                                    --
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `ev` calls a custom destructor
[INFO] [stdout]      |                                    `ev` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  387 |                     if let Some(sender) = self.hole_punch_attempts.remove(&socket_addr) {
[INFO] [stdout]      |                                           ---------------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  388 |                         match sender.send(upgrade) {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  394 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/quic/src/transport.rs:374:43
[INFO] [stdout]      |
[INFO] [stdout]  374 |         while let Poll::Ready(Some(ev)) = self.listeners.poll_next_unpin(cx) {
[INFO] [stdout]      |                                    --     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                    |      |
[INFO] [stdout]      |                                    |      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                    |      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                    `ev` calls a custom destructor
[INFO] [stdout]      |                                    `ev` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  387 |                     if let Some(sender) = self.hole_punch_attempts.remove(&socket_addr) {
[INFO] [stdout]      |                                           ---------------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                           `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  405 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/oneshot.rs:1215:1
[INFO] [stdout]      |
[INFO] [stdout] 1215 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ev` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.7/src/connection.rs:912:1
[INFO] [stdout]      |
[INFO] [stdout]  912 | impl Drop for ConnectionRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking libp2p-webrtc-websys v0.4.0 (/opt/rustwide/workdir/transports/webrtc-websys)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> muxers/mplex/src/io.rs:480:19
[INFO] [stdout]     |
[INFO] [stdout] 480 |             match ready!(self.poll_read_frame(cx, Some(id)))? {
[INFO] [stdout]     |                   ^^^^^^^----------------------------------^^
[INFO] [stdout]     |                   |      |
[INFO] [stdout]     |                   |      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                   |      up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 491 |                 frame @ Frame::Open { .. } => {
[INFO] [stdout]     |                 -----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `frame` calls a custom destructor
[INFO] [stdout]     |                 `frame` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 518 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `frame` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> muxers/mplex/src/io.rs:864:33
[INFO] [stdout]     |
[INFO] [stdout] 864 |         while let Some(frame) = self.pending_frames.pop_back() {
[INFO] [stdout]     |                        -----    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                        |        |
[INFO] [stdout]     |                        |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                        `frame` calls a custom destructor
[INFO] [stdout]     |                        `frame` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 869 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `frame` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> muxers/mplex/src/io.rs:1331:27
[INFO] [stdout]      |
[INFO] [stdout] 1331 |                     match m.poll_read_stream(cx, id) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1332 |                         Poll::Ready(Ok(Some(bytes))) => {
[INFO] [stdout]      |                                             -----
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `bytes` calls a custom destructor
[INFO] [stdout]      |                                             `bytes` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1337 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed protocols/kad/src/behaviour/test.rs (1 fix)
[INFO] [stderr]    Migrating transports/webrtc/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:195:27
[INFO] [stdout]      |
[INFO] [stdout]  195 |                     match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  217 |                                 for b in swarm.behaviour_mut().kbuckets.iter() {
[INFO] [stdout]      |                                          -------------------------------------
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          `iter` calls a custom destructor
[INFO] [stdout]      |                                          `iter` will be dropped later as of Edition 2024
[INFO] [stdout]  218 |                                     for e in b.iter() {
[INFO] [stdout]      |                                              --------
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  231 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:531:23
[INFO] [stdout]      |
[INFO] [stdout]  531 |                 match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  534 |                         result: QueryResult::GetRecord(Err(e)),
[INFO] [stdout]      |                                                            -
[INFO] [stdout]      |                                                            |
[INFO] [stdout]      |                                                            `e` calls a custom destructor
[INFO] [stdout]      |                                                            `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  538 |                         if let GetRecordError::NotFound { key, closest_peers } = e {
[INFO] [stdout]      |                                                           ---
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           `key` calls a custom destructor
[INFO] [stdout]      |                                                           `key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  553 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:654:27
[INFO] [stdout]      |
[INFO] [stdout]  654 |                     match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  658 |                                 result: QueryResult::PutRecord(res),
[INFO] [stdout]      |                                                                ---
[INFO] [stdout]      |                                                                |
[INFO] [stdout]      |                                                                `res` calls a custom destructor
[INFO] [stdout]      |                                                                `res` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  680 |                                 Ok(ok) => {
[INFO] [stdout]      |                                    --
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `ok` calls a custom destructor
[INFO] [stdout]      |                                    `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  688 |                             request: InboundRequest::PutRecord { record, .. },
[INFO] [stdout]      |                                                                  ------
[INFO] [stdout]      |                                                                  |
[INFO] [stdout]      |                                                                  `record` calls a custom destructor
[INFO] [stdout]      |                                                                  `record` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  715 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  726 |             while let Some(r) = results.pop() {
[INFO] [stdout]      |                            -
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            `r` calls a custom destructor
[INFO] [stdout]      |                            `r` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  734 |                 let key = kbucket::Key::new(r.key.clone());
[INFO] [stdout]      |                     ---
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `key` calls a custom destructor
[INFO] [stdout]      |                     `key` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `res` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `record` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:654:27
[INFO] [stdout]      |
[INFO] [stdout]  654 |                     match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  658 |                                 result: QueryResult::PutRecord(res),
[INFO] [stdout]      |                                                                ---
[INFO] [stdout]      |                                                                |
[INFO] [stdout]      |                                                                `res` calls a custom destructor
[INFO] [stdout]      |                                                                `res` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  680 |                                 Ok(ok) => {
[INFO] [stdout]      |                                    --
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `ok` calls a custom destructor
[INFO] [stdout]      |                                    `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  688 |                             request: InboundRequest::PutRecord { record, .. },
[INFO] [stdout]      |                                                                  ------
[INFO] [stdout]      |                                                                  |
[INFO] [stdout]      |                                                                  `record` calls a custom destructor
[INFO] [stdout]      |                                                                  `record` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  715 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `res` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `record` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/kad/src/behaviour/test.rs:726:33
[INFO] [stdout]     |
[INFO] [stdout] 658 |                                 result: QueryResult::PutRecord(res),
[INFO] [stdout]     |                                                                ---
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                `res` calls a custom destructor
[INFO] [stdout]     |                                                                `res` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 680 |                                 Ok(ok) => {
[INFO] [stdout]     |                                    --
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    `ok` calls a custom destructor
[INFO] [stdout]     |                                    `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 688 |                             request: InboundRequest::PutRecord { record, .. },
[INFO] [stdout]     |                                                                  ------
[INFO] [stdout]     |                                                                  |
[INFO] [stdout]     |                                                                  `record` calls a custom destructor
[INFO] [stdout]     |                                                                  `record` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 726 |             while let Some(r) = results.pop() {
[INFO] [stdout]     |                            -    ^^^^^^^^^^^^^
[INFO] [stdout]     |                            |    |
[INFO] [stdout]     |                            |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                            `r` calls a custom destructor
[INFO] [stdout]     |                            `r` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 734 |                 let key = kbucket::Key::new(r.key.clone());
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `key` calls a custom destructor
[INFO] [stdout]     |                     `key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 785 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `res` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `record` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/kad/src/behaviour/test.rs:726:33
[INFO] [stdout]     |
[INFO] [stdout] 726 |             while let Some(r) = results.pop() {
[INFO] [stdout]     |                            -    ^^^^^^^^^^^^^
[INFO] [stdout]     |                            |    |
[INFO] [stdout]     |                            |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                            |    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                            `r` calls a custom destructor
[INFO] [stdout]     |                            `r` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 734 |                 let key = kbucket::Key::new(r.key.clone());
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `key` calls a custom destructor
[INFO] [stdout]     |                     `key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 785 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:845:23
[INFO] [stdout]      |
[INFO] [stdout]  845 |                 match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  848 |                         result: QueryResult::GetRecord(Ok(r)),
[INFO] [stdout]      |                                                           -
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           `r` calls a custom destructor
[INFO] [stdout]      |                                                           `r` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  856 |                             if let GetRecordOk::FoundRecord(r) = r {
[INFO] [stdout]      |                                                             -
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                             `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  873 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:908:23
[INFO] [stdout]      |
[INFO] [stdout]  902 |             let mut records = Vec::new();
[INFO] [stdout]      |                 -----------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `records` calls a custom destructor
[INFO] [stdout]      |                 `records` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  908 |                 match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  911 |                         result: QueryResult::GetRecord(Ok(r)),
[INFO] [stdout]      |                                                           -
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           `r` calls a custom destructor
[INFO] [stdout]      |                                                           `r` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  930 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `records` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:908:23
[INFO] [stdout]      |
[INFO] [stdout]  908 |                 match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  911 |                         result: QueryResult::GetRecord(Ok(r)),
[INFO] [stdout]      |                                                           -
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           `r` calls a custom destructor
[INFO] [stdout]      |                                                           `r` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  930 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1005:27
[INFO] [stdout]      |
[INFO] [stdout] 1005 |                     match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1009 |                                 result: QueryResult::StartProviding(res),
[INFO] [stdout]      |                                                                     ---
[INFO] [stdout]      |                                                                     |
[INFO] [stdout]      |                                                                     `res` calls a custom destructor
[INFO] [stdout]      |                                                                     `res` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1023 |                                 Ok(ok) => {
[INFO] [stdout]      |                                    --
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `ok` calls a custom destructor
[INFO] [stdout]      |                                    `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1034 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 1076 |                 let kbucket_key = kbucket::Key::new(key);
[INFO] [stdout]      |                     -----------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `kbucket_key` calls a custom destructor
[INFO] [stdout]      |                     `kbucket_key` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `res` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `kbucket_key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1005:27
[INFO] [stdout]      |
[INFO] [stdout] 1005 |                     match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1009 |                                 result: QueryResult::StartProviding(res),
[INFO] [stdout]      |                                                                     ---
[INFO] [stdout]      |                                                                     |
[INFO] [stdout]      |                                                                     `res` calls a custom destructor
[INFO] [stdout]      |                                                                     `res` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1023 |                                 Ok(ok) => {
[INFO] [stdout]      |                                    --
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `ok` calls a custom destructor
[INFO] [stdout]      |                                    `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1034 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `res` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1050:35
[INFO] [stdout]      |
[INFO] [stdout] 1009 |                                 result: QueryResult::StartProviding(res),
[INFO] [stdout]      |                                                                     ---
[INFO] [stdout]      |                                                                     |
[INFO] [stdout]      |                                                                     `res` calls a custom destructor
[INFO] [stdout]      |                                                                     `res` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1023 |                                 Ok(ok) => {
[INFO] [stdout]      |                                    --
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `ok` calls a custom destructor
[INFO] [stdout]      |                                    `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1050 |             while let Some(key) = results.pop() {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1076 |                 let kbucket_key = kbucket::Key::new(key);
[INFO] [stdout]      |                     -----------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `kbucket_key` calls a custom destructor
[INFO] [stdout]      |                     `kbucket_key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1089 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `res` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `kbucket_key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1050:35
[INFO] [stdout]      |
[INFO] [stdout] 1050 |             while let Some(key) = results.pop() {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1076 |                 let kbucket_key = kbucket::Key::new(key);
[INFO] [stdout]      |                     -----------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `kbucket_key` calls a custom destructor
[INFO] [stdout]      |                     `kbucket_key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1089 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `kbucket_key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1144:23
[INFO] [stdout]      |
[INFO] [stdout] 1144 |                 match swarm.poll_next_unpin(ctx) { Poll::Ready(Some(e)) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^                    -
[INFO] [stdout]      |                       |                                             |
[INFO] [stdout]      |                       |                                             `e` calls a custom destructor
[INFO] [stdout]      |                       |                                             `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1157 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1229:23
[INFO] [stdout]      |
[INFO] [stdout] 1229 |                 match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1230 |                     Poll::Ready(Some(SwarmEvent::Behaviour(Event::OutboundQueryProgressed {
[INFO] [stdout] 1231 |                         result: QueryResult::GetRecord(result),
[INFO] [stdout]      |                                                        ------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        `result` calls a custom destructor
[INFO] [stdout]      |                                                        `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1245 |                             Ok(GetRecordOk::FoundRecord(r)) => {
[INFO] [stdout]      |                                                         -
[INFO] [stdout]      |                                                         |
[INFO] [stdout]      |                                                         `r` calls a custom destructor
[INFO] [stdout]      |                                                         `r` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1257 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1284:23
[INFO] [stdout]      |
[INFO] [stdout] 1284 |                 match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1285 |                     Poll::Ready(Some(SwarmEvent::Behaviour(Event::OutboundQueryProgressed {
[INFO] [stdout] 1286 |                         result: QueryResult::GetRecord(result),
[INFO] [stdout]      |                                                        ------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        `result` calls a custom destructor
[INFO] [stdout]      |                                                        `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1294 |                             Ok(ok) => {
[INFO] [stdout]      |                                --
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                `ok` calls a custom destructor
[INFO] [stdout]      |                                `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1313 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1357:23
[INFO] [stdout]      |
[INFO] [stdout] 1357 |                 match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1367 |                                 assert!(bucket.iter().all(|e| e.node.key.preimage() != peer));
[INFO] [stdout]      |                                         -------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1375 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1494:23
[INFO] [stdout]      |
[INFO] [stdout] 1494 |                 match single_swarm.next().await.unwrap() {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^-----^^^^^^^^^
[INFO] [stdout]      |                       |                   |
[INFO] [stdout]      |                       |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1497 |                         result: QueryResult::GetProviders(Ok(ok)),
[INFO] [stdout]      |                                                              --
[INFO] [stdout]      |                                                              |
[INFO] [stdout]      |                                                              `ok` calls a custom destructor
[INFO] [stdout]      |                                                              `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1518 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour/test.rs:1560:27
[INFO] [stdout]      |
[INFO] [stdout] 1560 |                     match swarm.poll_next_unpin(ctx) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1564 |                                 result: QueryResult::GetProviders(Ok(ok)),
[INFO] [stdout]      |                                                                      --
[INFO] [stdout]      |                                                                      |
[INFO] [stdout]      |                                                                      `ok` calls a custom destructor
[INFO] [stdout]      |                                                                      `ok` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1579 |                                     key: found_key,
[INFO] [stdout]      |                                          ---------
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          `found_key` calls a custom destructor
[INFO] [stdout]      |                                          `found_key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1602 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `ok` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `found_key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2559:23
[INFO] [stdout]      |
[INFO] [stdout] 2559 |                 match job.poll(cx, &mut self.store, now) { Poll::Ready(r) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^               -
[INFO] [stdout]      |                       |                                                |
[INFO] [stdout]      |                       |                                                `r` calls a custom destructor
[INFO] [stdout]      |                       |                                                `r` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2565 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `r` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2626:23
[INFO] [stdout]      |
[INFO] [stdout] 2597 |             if let Some(event) = self.queued_events.pop_front() {
[INFO] [stdout]      |                                  ------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2602 |             if let Some(entry) = self.kbuckets.take_applied_pending() {
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2626 |                 match self.queries.poll(now) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2667 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2628:46
[INFO] [stdout]      |
[INFO] [stdout] 2597 |             if let Some(event) = self.queued_events.pop_front() {
[INFO] [stdout]      |                                  ------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2602 |             if let Some(entry) = self.kbuckets.take_applied_pending() {
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2628 |                         if let Some(event) = self.query_finished(q) {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2631 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2633:46
[INFO] [stdout]      |
[INFO] [stdout] 2597 |             if let Some(event) = self.queued_events.pop_front() {
[INFO] [stdout]      |                                  ------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2602 |             if let Some(entry) = self.kbuckets.take_applied_pending() {
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2633 |                         if let Some(event) = self.query_timeout(q) {
[INFO] [stdout]      |                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                              |
[INFO] [stdout]      |                                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2636 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 2637 |                     QueryPoolState::Waiting(Some((query, peer_id))) => {
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/behaviour.rs:2626:23
[INFO] [stdout]      |
[INFO] [stdout] 2626 |                 match self.queries.poll(now) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2638 |                         let event = query.info.to_request(query.id());
[INFO] [stdout]      |                             -----
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             `event` calls a custom destructor
[INFO] [stdout]      |                             `event` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2667 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `event` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/kad/src/handler.rs:871:19
[INFO] [stdout]      |
[INFO] [stdout]  871 |               match std::mem::replace(
[INFO] [stdout]      |  ___________________^
[INFO] [stdout]  872 | |                 this,
[INFO] [stdout]  873 | |                 Self::Poisoned {
[INFO] [stdout]  874 | |                     phantom: PhantomData,
[INFO] [stdout]  875 | |                 },
[INFO] [stdout]  876 | |             ) {
[INFO] [stdout]      | |             ^
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |_____________this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  880 |                       mut substream,
[INFO] [stdout]      |                       -------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `substream` calls a custom destructor
[INFO] [stdout]      |                       `substream` will be dropped later as of Edition 2024
[INFO] [stdout]  881 |                   } => match substream.poll_next_unpin(cx) {
[INFO] [stdout]      |                              -----------------------------
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  970 |                   InboundSubstreamState::PendingSend(id, mut substream, msg) => {
[INFO] [stdout]      |                                                          -------------  ---
[INFO] [stdout]      |                                                          |              |
[INFO] [stdout]      |                                                          |              `msg` calls a custom destructor
[INFO] [stdout]      |                                                          |              `msg` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                                          `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  985 |                   InboundSubstreamState::PendingFlush(id, mut substream) => {
[INFO] [stdout]      |                                                           -------------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1001 |                   InboundSubstreamState::Closing(mut stream) => match stream.poll_close_unpin(cx) {
[INFO] [stdout]      |                                                  ----------
[INFO] [stdout]      |                                                  |
[INFO] [stdout]      |                                                  `stream` calls a custom destructor
[INFO] [stdout]      |                                                  `stream` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1011 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `substream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `substream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `msg` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]      |
[INFO] [stdout]  684 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `stream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/stream/tests/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> transports/webrtc/src/tokio/connection.rs:121:53
[INFO] [stdout]     |
[INFO] [stdout] 120 | ...                       let mut tx = tx.lock().await;
[INFO] [stdout]     |                               ------
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               `tx` calls a custom destructor
[INFO] [stdout]     |                               `tx` will be dropped later as of Edition 2024
[INFO] [stdout] 121 | ...                       if let Err(e) = tx.try_send(detached.clone()) {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 137 | ...                   }
[INFO] [stdout]     |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/arc-swap-1.7.1/src/lib.rs:326:1
[INFO] [stdout]     |
[INFO] [stdout] 326 | impl<T: RefCnt, S: Strategy<T>> Drop for ArcSwapAny<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `tx` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lock/mutex.rs:428:1
[INFO] [stdout]     |
[INFO] [stdout] 428 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/webrtc/src/tokio/udp_mux.rs:196:25
[INFO] [stdout]      |
[INFO] [stdout]  193 |             match self.send_buffer.take() {
[INFO] [stdout]      |                   -----------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  196 |                         self.send_command.poll_next_unpin(cx)
[INFO] [stdout]      |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#21`
[INFO] [stdout]      |                         up until Edition 2021 `#21` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  201 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  205 |                             let _ = response.send(result.map_err(|e| Error::Io(e.into())));
[INFO] [stdout]      |                                     ------------------------------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  216 |             if let Poll::Ready(Some(((conn, addr), response))) =
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       `conn` calls a custom destructor
[INFO] [stdout]      |                                       `conn` will be dropped later as of Edition 2024
[INFO] [stdout]  217 |                 self.registration_command.poll_next_unpin(cx)
[INFO] [stdout]      |                 ---------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  240 |             if let Poll::Ready(Some((ufrag, response))) = self.get_conn_command.poll_next_unpin(cx)
[INFO] [stdout]      |                                                           -----------------------------------------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  243 |                     let _ = response.send(Err(Error::ErrUseClosedNetworkConn));
[INFO] [stdout]      |                             --------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  247 |                 if let Some(conn) = self.conns.get(&ufrag).cloned() {
[INFO] [stdout]      |                                     -------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                     `#6` will be dropped later as of Edition 2024
[INFO] [stdout]  248 |                     let _ = response.send(Ok(Arc::new(conn)));
[INFO] [stdout]      |                             ---------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                             `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  252 |                 let muxed_conn = match self.create_muxed_conn(&ufrag) {
[INFO] [stdout]      |                                        ------------------------------
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                        `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  255 |                         let _ = response.send(Err(e));
[INFO] [stdout]      |                                 ---------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                 `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  271 |                 self.conns.insert(ufrag, muxed_conn.clone());
[INFO] [stdout]      |                 --------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                 `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  272 |
[INFO] [stdout]  273 |                 let _ = response.send(Ok(Arc::new(muxed_conn) as Arc<dyn Conn + Send + Sync>));
[INFO] [stdout]      |                         ----------------------------------------------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                         `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  279 |             if let Poll::Ready(Some(((), response))) = self.close_command.poll_next_unpin(cx) {
[INFO] [stdout]      |                                                        --------------------------------------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                                        `#12` will be dropped later as of Edition 2024
[INFO] [stdout]  280 |                 if self.is_closed {
[INFO] [stdout]  281 |                     let _ = response.send(Err(Error::ErrAlreadyClosed));
[INFO] [stdout]      |                             -------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  285 |                 for (_, conn) in self.conns.drain() {
[INFO] [stdout]      |                         ----     ------------------
[INFO] [stdout]      |                         |        |
[INFO] [stdout]      |                         |        `iter` calls a custom destructor
[INFO] [stdout]      |                         |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         |        this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                         |        `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                         `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  297 |                 let _ = response.send(Ok(()));
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |                         `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  306 |                 self.remove_conn_command.poll_next_unpin(cx)
[INFO] [stdout]      |                 --------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |                 `#17` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  311 |                 if let Some(removed_conn) = self.conns.remove(&ufrag) {
[INFO] [stdout]      |                             ------------    -------------------------
[INFO] [stdout]      |                             |               |
[INFO] [stdout]      |                             |               this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      |                             |               `#18` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `removed_conn` calls a custom destructor
[INFO] [stdout]      |                             `removed_conn` will be dropped later as of Edition 2024
[INFO] [stdout]  312 |                     for address in removed_conn.get_addresses() {
[INFO] [stdout]  313 |                         self.address_map.remove(&address);
[INFO] [stdout]      |                         ---------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]      |                         `#19` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  340 |                             let conn = match conn {
[INFO] [stdout]      |                                 ----
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#20`
[INFO] [stdout]      |                                 `#20` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  373 |                                             Err(e) => {
[INFO] [stdout]      |                                                 -
[INFO] [stdout]      |                                                 |
[INFO] [stdout]      |                                                 `e` calls a custom destructor
[INFO] [stdout]      |                                                 `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#16` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/webrtc/src/tokio/udp_mux.rs:345:43
[INFO] [stdout]      |
[INFO] [stdout]  193 |             match self.send_buffer.take() {
[INFO] [stdout]      |                   -----------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  205 |                             let _ = response.send(result.map_err(|e| Error::Io(e.into())));
[INFO] [stdout]      |                                     ------------------------------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  216 |             if let Poll::Ready(Some(((conn, addr), response))) =
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       `conn` calls a custom destructor
[INFO] [stdout]      |                                       `conn` will be dropped later as of Edition 2024
[INFO] [stdout]  217 |                 self.registration_command.poll_next_unpin(cx)
[INFO] [stdout]      |                 ---------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  240 |             if let Poll::Ready(Some((ufrag, response))) = self.get_conn_command.poll_next_unpin(cx)
[INFO] [stdout]      |                                                           -----------------------------------------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  243 |                     let _ = response.send(Err(Error::ErrUseClosedNetworkConn));
[INFO] [stdout]      |                             --------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  247 |                 if let Some(conn) = self.conns.get(&ufrag).cloned() {
[INFO] [stdout]      |                                     -------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                     `#6` will be dropped later as of Edition 2024
[INFO] [stdout]  248 |                     let _ = response.send(Ok(Arc::new(conn)));
[INFO] [stdout]      |                             ---------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                             `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  252 |                 let muxed_conn = match self.create_muxed_conn(&ufrag) {
[INFO] [stdout]      |                                        ------------------------------
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                        `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  255 |                         let _ = response.send(Err(e));
[INFO] [stdout]      |                                 ---------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                 `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  271 |                 self.conns.insert(ufrag, muxed_conn.clone());
[INFO] [stdout]      |                 --------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                 `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  272 |
[INFO] [stdout]  273 |                 let _ = response.send(Ok(Arc::new(muxed_conn) as Arc<dyn Conn + Send + Sync>));
[INFO] [stdout]      |                         ----------------------------------------------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                         `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  279 |             if let Poll::Ready(Some(((), response))) = self.close_command.poll_next_unpin(cx) {
[INFO] [stdout]      |                                                        --------------------------------------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                                        `#12` will be dropped later as of Edition 2024
[INFO] [stdout]  280 |                 if self.is_closed {
[INFO] [stdout]  281 |                     let _ = response.send(Err(Error::ErrAlreadyClosed));
[INFO] [stdout]      |                             -------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  285 |                 for (_, conn) in self.conns.drain() {
[INFO] [stdout]      |                         ----     ------------------
[INFO] [stdout]      |                         |        |
[INFO] [stdout]      |                         |        `iter` calls a custom destructor
[INFO] [stdout]      |                         |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         |        this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                         |        `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                         `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  297 |                 let _ = response.send(Ok(()));
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |                         `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  306 |                 self.remove_conn_command.poll_next_unpin(cx)
[INFO] [stdout]      |                 --------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |                 `#17` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  311 |                 if let Some(removed_conn) = self.conns.remove(&ufrag) {
[INFO] [stdout]      |                             ------------    -------------------------
[INFO] [stdout]      |                             |               |
[INFO] [stdout]      |                             |               this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      |                             |               `#18` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `removed_conn` calls a custom destructor
[INFO] [stdout]      |                             `removed_conn` will be dropped later as of Edition 2024
[INFO] [stdout]  312 |                     for address in removed_conn.get_addresses() {
[INFO] [stdout]  313 |                         self.address_map.remove(&address);
[INFO] [stdout]      |                         ---------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]      |                         `#19` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  340 |                             let conn = match conn {
[INFO] [stdout]      |                                 ----
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#20`
[INFO] [stdout]      |                                 `#20` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  345 |                                     match self.conn_from_stun_message(read.filled(), &addr) {
[INFO] [stdout]      |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#21`
[INFO] [stdout]      |                                           up until Edition 2021 `#21` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  353 |                                 }
[INFO] [stdout]      |                                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  373 |                                             Err(e) => {
[INFO] [stdout]      |                                                 -
[INFO] [stdout]      |                                                 |
[INFO] [stdout]      |                                                 `e` calls a custom destructor
[INFO] [stdout]      |                                                 `e` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#21` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#16` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> transports/webrtc/src/tokio/udp_mux.rs:361:47
[INFO] [stdout]      |
[INFO] [stdout]  193 |             match self.send_buffer.take() {
[INFO] [stdout]      |                   -----------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  205 |                             let _ = response.send(result.map_err(|e| Error::Io(e.into())));
[INFO] [stdout]      |                                     ------------------------------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  216 |             if let Poll::Ready(Some(((conn, addr), response))) =
[INFO] [stdout]      |                                       ----
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       `conn` calls a custom destructor
[INFO] [stdout]      |                                       `conn` will be dropped later as of Edition 2024
[INFO] [stdout]  217 |                 self.registration_command.poll_next_unpin(cx)
[INFO] [stdout]      |                 ---------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  240 |             if let Poll::Ready(Some((ufrag, response))) = self.get_conn_command.poll_next_unpin(cx)
[INFO] [stdout]      |                                                           -----------------------------------------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                           `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  243 |                     let _ = response.send(Err(Error::ErrUseClosedNetworkConn));
[INFO] [stdout]      |                             --------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  247 |                 if let Some(conn) = self.conns.get(&ufrag).cloned() {
[INFO] [stdout]      |                                     -------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                     `#6` will be dropped later as of Edition 2024
[INFO] [stdout]  248 |                     let _ = response.send(Ok(Arc::new(conn)));
[INFO] [stdout]      |                             ---------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                             `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  252 |                 let muxed_conn = match self.create_muxed_conn(&ufrag) {
[INFO] [stdout]      |                                        ------------------------------
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                        `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  255 |                         let _ = response.send(Err(e));
[INFO] [stdout]      |                                 ---------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                 `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  271 |                 self.conns.insert(ufrag, muxed_conn.clone());
[INFO] [stdout]      |                 --------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                 `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  272 |
[INFO] [stdout]  273 |                 let _ = response.send(Ok(Arc::new(muxed_conn) as Arc<dyn Conn + Send + Sync>));
[INFO] [stdout]      |                         ----------------------------------------------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                         `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  279 |             if let Poll::Ready(Some(((), response))) = self.close_command.poll_next_unpin(cx) {
[INFO] [stdout]      |                                                        --------------------------------------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                                        `#12` will be dropped later as of Edition 2024
[INFO] [stdout]  280 |                 if self.is_closed {
[INFO] [stdout]  281 |                     let _ = response.send(Err(Error::ErrAlreadyClosed));
[INFO] [stdout]      |                             -------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  285 |                 for (_, conn) in self.conns.drain() {
[INFO] [stdout]      |                         ----     ------------------
[INFO] [stdout]      |                         |        |
[INFO] [stdout]      |                         |        `iter` calls a custom destructor
[INFO] [stdout]      |                         |        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         |        this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                         |        `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                         `#15` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  297 |                 let _ = response.send(Ok(()));
[INFO] [stdout]      |                         ---------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |                         `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  306 |                 self.remove_conn_command.poll_next_unpin(cx)
[INFO] [stdout]      |                 --------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |                 `#17` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  311 |                 if let Some(removed_conn) = self.conns.remove(&ufrag) {
[INFO] [stdout]      |                             ------------    -------------------------
[INFO] [stdout]      |                             |               |
[INFO] [stdout]      |                             |               this value will be stored in a temporary; let us call it `#18`
[INFO] [stdout]      |                             |               `#18` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `removed_conn` calls a custom destructor
[INFO] [stdout]      |                             `removed_conn` will be dropped later as of Edition 2024
[INFO] [stdout]  312 |                     for address in removed_conn.get_addresses() {
[INFO] [stdout]  313 |                         self.address_map.remove(&address);
[INFO] [stdout]      |                         ---------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#19`
[INFO] [stdout]      |                         `#19` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  340 |                             let conn = match conn {
[INFO] [stdout]      |                                 ----
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#20`
[INFO] [stdout]      |                                 `#20` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  361 |                                         match ufrag_from_stun_message(read.filled(), false) {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#21`
[INFO] [stdout]      |                                               up until Edition 2021 `#21` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  373 |                                             Err(e) => {
[INFO] [stdout]      |                                                 -
[INFO] [stdout]      |                                                 |
[INFO] [stdout]      |                                                 `e` calls a custom destructor
[INFO] [stdout]      |                                                 `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  381 |                                     }
[INFO] [stdout]      |                                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#21` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#11` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#16` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#18` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `removed_conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#19` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:1386:1
[INFO] [stdout]      |
[INFO] [stdout] 1386 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/sync.rs:3472:0
[INFO] [stdout] note: `#20` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.44.2/src/sync/watch.rs:941:1
[INFO] [stdout]      |
[INFO] [stdout]  941 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/stream/tests/lib.rs:38:43
[INFO] [stdout]      |
[INFO] [stdout]   38 |         while let Some((_, mut stream)) = incoming.next().await {
[INFO] [stdout]      |                            ----------     ^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |              |               |
[INFO] [stdout]      |                            |              |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |              |               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            |              up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            `stream` calls a custom destructor
[INFO] [stdout]      |                            `stream` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   41 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `stream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/bytes_mut.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl Drop for BytesMut {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating wasm-tests/webtransport-tests/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:46:38
[INFO] [stdout]     |
[INFO] [stdout]  46 |             create_stream(&mut conn).await
[INFO] [stdout]     |             -------------------------^^^^^
[INFO] [stdout]     |             |                        |
[INFO] [stdout]     |             |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |             |                        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |             |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |             |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `__awaitee` calls a custom destructor
[INFO] [stdout]     |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  47 |         } else {
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  48 |             incoming_stream(&mut conn).await
[INFO] [stdout]     |             --------------------------------
[INFO] [stdout]     |             |                          |
[INFO] [stdout]     |             |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |             |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:48:40
[INFO] [stdout]     |
[INFO] [stdout]  46 |             create_stream(&mut conn).await
[INFO] [stdout]     |             ------------------------------
[INFO] [stdout]     |             |                        |
[INFO] [stdout]     |             |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |             |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `__awaitee` calls a custom destructor
[INFO] [stdout]     |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  47 |         } else {
[INFO] [stdout]  48 |             incoming_stream(&mut conn).await
[INFO] [stdout]     |             ---------------------------^^^^^
[INFO] [stdout]     |             |                          |
[INFO] [stdout]     |             |                          this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |             |                          up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |             |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |             |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  49 |         };
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:72:42
[INFO] [stdout]     |
[INFO] [stdout]  67 |         let mut conn = new_connection_to_echo_server().await;
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout]     |                        |                               |
[INFO] [stdout]     |                        |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        |                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        `__awaitee` calls a custom destructor
[INFO] [stdout]     |                        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  72 |                 create_stream(&mut conn).await
[INFO] [stdout]     |                 -------------------------^^^^^
[INFO] [stdout]     |                 |                        |
[INFO] [stdout]     |                 |                        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                 |                        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                 |                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                 |                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  73 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  74 |                 incoming_stream(&mut conn).await
[INFO] [stdout]     |                 --------------------------------
[INFO] [stdout]     |                 |                          |
[INFO] [stdout]     |                 |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                 |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  84 |         for stream in streams {
[INFO] [stdout]     |                       -------
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       `iter` calls a custom destructor
[INFO] [stdout]     |                       `iter` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:74:44
[INFO] [stdout]     |
[INFO] [stdout]  67 |         let mut conn = new_connection_to_echo_server().await;
[INFO] [stdout]     |                        -------------------------------------
[INFO] [stdout]     |                        |                               |
[INFO] [stdout]     |                        |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        |                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        `__awaitee` calls a custom destructor
[INFO] [stdout]     |                        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  72 |                 create_stream(&mut conn).await
[INFO] [stdout]     |                 ------------------------------
[INFO] [stdout]     |                 |                        |
[INFO] [stdout]     |                 |                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                 |                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  73 |             } else {
[INFO] [stdout]  74 |                 incoming_stream(&mut conn).await
[INFO] [stdout]     |                 ---------------------------^^^^^
[INFO] [stdout]     |                 |                          |
[INFO] [stdout]     |                 |                          this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                 |                          up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                 |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                 |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout]  75 |             };
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout]  84 |         for stream in streams {
[INFO] [stdout]     |                       -------
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       `iter` calls a custom destructor
[INFO] [stdout]     |                       `iter` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                       `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/autonat/tests/autonatv2.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:99:42
[INFO] [stdout]     |
[INFO] [stdout]  95 |         let mut conn = new_connection_to_echo_server().await;
[INFO] [stdout]     |             --------   -------------------------------------
[INFO] [stdout]     |             |          |                               |
[INFO] [stdout]     |             |          |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |             |          |                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |             |          `__awaitee` calls a custom destructor
[INFO] [stdout]     |             |          `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `conn` calls a custom destructor
[INFO] [stdout]     |             `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  98 |             let mut stream = if i % 2 == 0 {
[INFO] [stdout]     |                 ----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `stream` calls a custom destructor
[INFO] [stdout]     |                 `stream` will be dropped later as of Edition 2024
[INFO] [stdout]  99 |                 create_stream(&mut conn).await
[INFO] [stdout]     |                 -------------------------^^^^^
[INFO] [stdout]     |                 |                        |
[INFO] [stdout]     |                 |                        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                 |                        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                 |                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                 |                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 100 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 101 |                 incoming_stream(&mut conn).await
[INFO] [stdout]     |                 --------------------------------
[INFO] [stdout]     |                 |                          |
[INFO] [stdout]     |                 |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                 |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 104 |             send_recv(&mut stream).await;
[INFO] [stdout]     |             ----------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:101:44
[INFO] [stdout]     |
[INFO] [stdout]  95 |         let mut conn = new_connection_to_echo_server().await;
[INFO] [stdout]     |             --------   -------------------------------------
[INFO] [stdout]     |             |          |                               |
[INFO] [stdout]     |             |          |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |             |          |                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |             |          `__awaitee` calls a custom destructor
[INFO] [stdout]     |             |          `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `conn` calls a custom destructor
[INFO] [stdout]     |             `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  98 |             let mut stream = if i % 2 == 0 {
[INFO] [stdout]     |                 ----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `stream` calls a custom destructor
[INFO] [stdout]     |                 `stream` will be dropped later as of Edition 2024
[INFO] [stdout]  99 |                 create_stream(&mut conn).await
[INFO] [stdout]     |                 ------------------------------
[INFO] [stdout]     |                 |                        |
[INFO] [stdout]     |                 |                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                 |                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 100 |             } else {
[INFO] [stdout] 101 |                 incoming_stream(&mut conn).await
[INFO] [stdout]     |                 ---------------------------^^^^^
[INFO] [stdout]     |                 |                          |
[INFO] [stdout]     |                 |                          this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                 |                          up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                 |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                 |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] 102 |             };
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 103 |
[INFO] [stdout] 104 |             send_recv(&mut stream).await;
[INFO] [stdout]     |             ----------------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |             `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating misc/memory-connection-limits/tests/max_bytes.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/memory-connection-limits/tests/max_bytes.rs:79:11
[INFO] [stdout]      |
[INFO] [stdout]   40 |       let mut network = Swarm::new_ephemeral_tokio(|_| TestBehaviour {
[INFO] [stdout]      |           -----------
[INFO] [stdout]      |           |
[INFO] [stdout]      |           `network` calls a custom destructor
[INFO] [stdout]      |           `network` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   79 |       match network
[INFO] [stdout]      |  ___________^
[INFO] [stdout]   80 | |         .dial(
[INFO] [stdout]   81 | |             DialOpts::peer_id(target)
[INFO] [stdout]   82 | |                 .condition(libp2p_swarm::dial_opts::PeerCondition::Always)
[INFO] [stdout] ...    |
[INFO] [stdout]   86 | |         .expect_err("Unexpected dialing success.")
[INFO] [stdout]      | |                                                  ^
[INFO] [stdout]      | |                                                  |
[INFO] [stdout]      | |__________________________________________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  101 |   }
[INFO] [stdout]      |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `network` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/rendezvous/tests/rendezvous.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating misc/memory-connection-limits/tests/max_percentage.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/rendezvous/tests/rendezvous.rs:67:59
[INFO] [stdout]      |
[INFO] [stdout]   38 |     let ([mut alice, mut bob], mut robert) =
[INFO] [stdout]      |           ---------  -------   ----------
[INFO] [stdout]      |           |          |         |
[INFO] [stdout]      |           |          |         `robert` calls a custom destructor
[INFO] [stdout]      |           |          |         `robert` will be dropped later as of Edition 2024
[INFO] [stdout]      |           |          `bob` calls a custom destructor
[INFO] [stdout]      |           |          `bob` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `alice` calls a custom destructor
[INFO] [stdout]      |           `alice` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   67 |     match libp2p_swarm_test::drive(&mut bob, &mut robert).await {
[INFO] [stdout]      |                                                           ^^^^^
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   85 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `alice` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `bob` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `robert` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/rendezvous/tests/rendezvous.rs:158:59
[INFO] [stdout]      |
[INFO] [stdout]  110 |     let ([mut alice, mut bob], mut robert) =
[INFO] [stdout]      |           ---------  -------   ----------
[INFO] [stdout]      |           |          |         |
[INFO] [stdout]      |           |          |         `robert` calls a custom destructor
[INFO] [stdout]      |           |          |         `robert` will be dropped later as of Edition 2024
[INFO] [stdout]      |           |          `bob` calls a custom destructor
[INFO] [stdout]      |           |          `bob` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `alice` calls a custom destructor
[INFO] [stdout]      |           `alice` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  158 |     match libp2p_swarm_test::drive(&mut bob, &mut robert).await {
[INFO] [stdout]      |                                                           ^^^^^
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  170 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `alice` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `bob` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `bob` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `robert` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/rendezvous/tests/rendezvous.rs:213:61
[INFO] [stdout]      |
[INFO] [stdout]  178 |     let ([mut alice], mut robert) =
[INFO] [stdout]      |           ---------   ----------
[INFO] [stdout]      |           |           |
[INFO] [stdout]      |           |           `robert` calls a custom destructor
[INFO] [stdout]      |           |           `robert` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `alice` calls a custom destructor
[INFO] [stdout]      |           `alice` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  213 |     match libp2p_swarm_test::drive(&mut alice, &mut robert).await {
[INFO] [stdout]      |                                                             ^^^^^
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  223 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `alice` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `robert` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/rendezvous/tests/rendezvous.rs:243:61
[INFO] [stdout]      |
[INFO] [stdout]  231 |     let ([mut alice], mut robert) =
[INFO] [stdout]      |           ---------   ----------
[INFO] [stdout]      |           |           |
[INFO] [stdout]      |           |           `robert` calls a custom destructor
[INFO] [stdout]      |           |           `robert` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `alice` calls a custom destructor
[INFO] [stdout]      |           `alice` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  243 |     match libp2p_swarm_test::drive(&mut alice, &mut robert).await {
[INFO] [stdout]      |                                                             ^^^^^
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  252 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `alice` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `robert` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/rendezvous/tests/rendezvous.rs:292:17
[INFO] [stdout]     |
[INFO] [stdout] 292 |                 alice.select_next_some().await
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                 |                        |
[INFO] [stdout]     |                 |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                 |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 296 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/rendezvous/tests/rendezvous.rs:300:72
[INFO] [stdout]     |
[INFO] [stdout] 300 |             if let SwarmEvent::ConnectionEstablished { peer_id, .. } = bob.select_next_some().await
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                                                                        |                      |
[INFO] [stdout]     |                                                                        |                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                        |                      `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                                                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                                                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 304 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/rendezvous/tests/rendezvous.rs:325:59
[INFO] [stdout]      |
[INFO] [stdout]  317 |     let mut robert = new_server(rendezvous::server::Config::default()).await;
[INFO] [stdout]      |         ----------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `robert` calls a custom destructor
[INFO] [stdout]      |         `robert` will be dropped later as of Edition 2024
[INFO] [stdout]  318 |     let mut eve = new_impersonating_client().await;
[INFO] [stdout]      |         -------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `eve` calls a custom destructor
[INFO] [stdout]      |         `eve` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  325 |     match libp2p_swarm_test::drive(&mut eve, &mut robert).await {
[INFO] [stdout]      |                                                           ^^^^^
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  336 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `robert` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `eve` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `eve` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/rendezvous/tests/rendezvous.rs:368:62
[INFO] [stdout]      |
[INFO] [stdout]  345 |     let ([mut alice], mut robert) =
[INFO] [stdout]      |           ---------   ----------
[INFO] [stdout]      |           |           |
[INFO] [stdout]      |           |           `robert` calls a custom destructor
[INFO] [stdout]      |           |           `robert` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `alice` calls a custom destructor
[INFO] [stdout]      |           `alice` will be dropped later as of Edition 2024
[INFO] [stdout]  346 |         new_server_with_connected_clients(rendezvous::server::Config::default()).await;
[INFO] [stdout]  347 |     let mut charlie = new_combined_node().await;
[INFO] [stdout]      |         -----------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `charlie` calls a custom destructor
[INFO] [stdout]      |         `charlie` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  368 |     match libp2p_swarm_test::drive(&mut charlie, &mut alice).await {
[INFO] [stdout]      |                                                              ^^^^^
[INFO] [stdout]      |                                                              |
[INFO] [stdout]      |                                                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  375 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `alice` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `alice` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `robert` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `robert` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `charlie` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ecdsa-0.16.9/src/signing.rs:380:1
[INFO] [stdout]      |
[INFO] [stdout]  380 | / impl<C> Drop for SigningKey<C>
[INFO] [stdout]  381 | | where
[INFO] [stdout]  382 | |     C: PrimeCurve + CurveArithmetic,
[INFO] [stdout]  383 | |     Scalar<C>: Invert<Output = CtOption<Scalar<C>>> + SignPrimitive<C>,
[INFO] [stdout]  384 | |     SignatureSize<C>: ArrayLength<u8>,
[INFO] [stdout]      | |______________________________________^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ed25519-dalek-2.1.1/src/signing.rs:652:1
[INFO] [stdout]      |
[INFO] [stdout]  652 | impl Drop for SigningKey {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `charlie` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> misc/memory-connection-limits/tests/max_percentage.rs:86:11
[INFO] [stdout]      |
[INFO] [stdout]   39 |       let system_info = sysinfo::System::new_with_specifics(
[INFO] [stdout]      |           -----------
[INFO] [stdout]      |           |
[INFO] [stdout]      |           `system_info` calls a custom destructor
[INFO] [stdout]      |           `system_info` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   43 |       let mut network = Swarm::new_ephemeral_tokio(|_| TestBehaviour {
[INFO] [stdout]      |           -----------
[INFO] [stdout]      |           |
[INFO] [stdout]      |           `network` calls a custom destructor
[INFO] [stdout]      |           `network` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   86 |       match network
[INFO] [stdout]      |  ___________^
[INFO] [stdout]   87 | |         .dial(
[INFO] [stdout]   88 | |             DialOpts::peer_id(target)
[INFO] [stdout]   89 | |                 .condition(PeerCondition::Always)
[INFO] [stdout] ...    |
[INFO] [stdout]   93 | |         .expect_err("Unexpected dialing success.")
[INFO] [stdout]      | |                                                  ^
[INFO] [stdout]      | |                                                  |
[INFO] [stdout]      | |__________________________________________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  105 |   }
[INFO] [stdout]      |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `system_info` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sysinfo-0.33.1/src/unix/linux/process.rs:961:1
[INFO] [stdout]      |
[INFO] [stdout]  961 | impl Drop for FileCounter {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `network` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `network` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating protocols/autonat/tests/test_client.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating protocols/autonat/tests/test_server.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/autonat/tests/test_client.rs:87:15
[INFO] [stdout]     |
[INFO] [stdout]  87 |         match client.next_swarm_event().await {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |               |                         |
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |               |                         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               `__awaitee` calls a custom destructor
[INFO] [stdout]     |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 116 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/autonat/tests/test_client.rs:303:41
[INFO] [stdout]      |
[INFO] [stdout]  275 |     let mut client = Swarm::new_ephemeral_tokio(|key| {
[INFO] [stdout]      |         ----------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `client` calls a custom destructor
[INFO] [stdout]      |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  303 |     match client.next_behaviour_event().await {
[INFO] [stdout]      |                                         ^^^^^
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  309 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]      |
[INFO] [stdout]  132 | impl Drop for Delay {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/autonat/tests/test_client.rs:407:41
[INFO] [stdout]      |
[INFO] [stdout]  382 |     let mut client = Swarm::new_ephemeral_tokio(|key| {
[INFO] [stdout]      |         ----------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `client` calls a custom destructor
[INFO] [stdout]      |         `client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  407 |     match client.next_behaviour_event().await {
[INFO] [stdout]      |                                         ^^^^^
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  413 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `client` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]      |
[INFO] [stdout]  132 | impl Drop for Delay {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]   --> protocols/autonat/tests/test_server.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |         match server.next_swarm_event().await {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]    |               |                         |
[INFO] [stdout]    |               |                         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]    |               |                         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]    |               |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]    |               |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]    |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]    |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]    |               `__awaitee` calls a custom destructor
[INFO] [stdout]    |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 68 |     };
[INFO] [stdout]    |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]    = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]    = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]    = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]    = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]    = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating libp2p/src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/autonat/tests/test_server.rs:88:15
[INFO] [stdout]     |
[INFO] [stdout]  88 |         match server.next_swarm_event().await {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |               |                         |
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |               |                         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               `__awaitee` calls a custom destructor
[INFO] [stdout]     |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 115 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/autonat/tests/test_server.rs:117:41
[INFO] [stdout]      |
[INFO] [stdout]   33 |     let (mut server, server_id, server_addr) = new_server_swarm(None).await;
[INFO] [stdout]      |          ----------
[INFO] [stdout]      |          |
[INFO] [stdout]      |          `server` calls a custom destructor
[INFO] [stdout]      |          `server` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  117 |     match server.next_behaviour_event().await {
[INFO] [stdout]      |                                         ^^^^^
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  129 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `server` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]      |
[INFO] [stdout]  132 | impl Drop for Delay {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/autonat/tests/test_server.rs:149:15
[INFO] [stdout]     |
[INFO] [stdout] 149 |         match server.next_swarm_event().await {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |               |                         |
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |               |                         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               `__awaitee` calls a custom destructor
[INFO] [stdout]     |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 150 |             SwarmEvent::OutgoingConnectionError { peer_id, error, .. } => {
[INFO] [stdout]     |                                                            -----
[INFO] [stdout]     |                                                            |
[INFO] [stdout]     |                                                            `error` calls a custom destructor
[INFO] [stdout]     |                                                            `error` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 162 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> protocols/autonat/tests/test_server.rs:164:41
[INFO] [stdout]      |
[INFO] [stdout]  133 |     let (mut server, server_id, server_addr) = new_server_swarm(None).await;
[INFO] [stdout]      |          ----------
[INFO] [stdout]      |          |
[INFO] [stdout]      |          `server` calls a custom destructor
[INFO] [stdout]      |          `server` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  164 |     match server.next_behaviour_event().await {
[INFO] [stdout]      |                                         ^^^^^
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  179 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `server` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-timer-3.0.3/src/native/delay.rs:132:1
[INFO] [stdout]      |
[INFO] [stdout]  132 | impl Drop for Delay {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/hashlink-0.10.0/src/linked_hash_map.rs:643:1
[INFO] [stdout]      |
[INFO] [stdout]  643 | impl<K, V, S> Drop for LinkedHashMap<K, V, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs:2145:1
[INFO] [stdout]      |
[INFO] [stdout] 2145 | impl<A: Array> Drop for SmallVec<A> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:1105:1
[INFO] [stdout]      |
[INFO] [stdout] 1105 | impl<T> Drop for Receiver<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/stream/futures_unordered/mod.rs:575:1
[INFO] [stdout]      |
[INFO] [stdout]  575 | impl<Fut> Drop for FuturesUnordered<Fut> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `server` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/mpsc/mod.rs:944:1
[INFO] [stdout]      |
[INFO] [stdout]  944 | impl<T> Drop for BoundedSenderInner<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> protocols/autonat/tests/test_server.rs:297:15
[INFO] [stdout]     |
[INFO] [stdout] 297 |         match server.next_swarm_event().await {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |               |                         |
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |               |                         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |               |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |               `__awaitee` calls a custom destructor
[INFO] [stdout]     |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 327 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed libp2p/src/builder/phase/quic.rs (1 fix)
[INFO] [stderr]        Fixed libp2p/src/builder/phase/other_transport.rs (1 fix)
[INFO] [stderr]        Fixed libp2p/src/builder/phase/swarm.rs (1 fix)
[INFO] [stderr]        Fixed libp2p/src/builder/phase/websocket.rs (2 fixes)
[INFO] [stderr]        Fixed libp2p/src/builder/phase/bandwidth_metrics.rs (1 fix)
[INFO] [stderr]        Fixed libp2p/src/builder/phase/relay.rs (1 fix)
[INFO] [stderr]     Checking interop-tests v0.1.0 (/opt/rustwide/workdir/interop-tests)
[INFO] [stderr]     Checking libp2p-perf v0.4.0 (/opt/rustwide/workdir/protocols/perf)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:46:38
[INFO] [stdout]     |
[INFO] [stdout]  46 |             create_stream(&mut conn).await
[INFO] [stdout]     |             -------------------------^^^^^
[INFO] [stdout]     |             |                        |
[INFO] [stdout]     |             |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |             |                        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |             |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |             |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `__awaitee` calls a custom destructor
[INFO] [stdout]     |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  47 |         } else {
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]  48 |             incoming_stream(&mut conn).await
[INFO] [stdout]     |             --------------------------------
[INFO] [stdout]     |             |                          |
[INFO] [stdout]     |             |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |             |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:48:40
[INFO] [stdout]     |
[INFO] [stdout]  46 |             create_stream(&mut conn).await
[INFO] [stdout]     |             ------------------------------
[INFO] [stdout]     |             |                        |
[INFO] [stdout]     |             |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |             |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `__awaitee` calls a custom destructor
[INFO] [stdout]     |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  47 |         } else {
[INFO] [stdout]  48 |             incoming_stream(&mut conn).await
[INFO] [stdout]     |             ---------------------------^^^^^
[INFO] [stdout]     |             |                          |
[INFO] [stdout]     |             |                          this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |             |                          up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |             |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |             |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  49 |         };
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/send_wrapper-0.6.0/src/lib.rs:201:1
[INFO] [stdout]     |
[INFO] [stdout] 201 | impl<T> Drop for SendWrapper<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> wasm-tests/webtransport-tests/src/lib.rs:72:42
[WARN] too many lines in the log, truncating it
